声明我有一个“用户”表,这里是一个示例:“IN”在dynamodb
{
username:"haddox",
formattedPhoneNumber:"676767676",
verified: 0,
}
我的愿望是检索其formattedPhoneNumber包含在电话号码阵列中的所有用户(从检索到的我联系人)。我创建了一个辅助索引,验证为HASH并将格式化的PhoneNumber格式化为RANGE。这里是我的尝试:
var params = {
TableName: "Users",
IndexName: "FormattedPhoneSecondaryIndex",
KeyConditionExpression: "verified = :v AND formattedPhone IN :n",
ExpressionAttributeValues: {
":v":1,
":n": ["672053916", "642117296"]
},
ProjectionExpression: "username, formattedPhoneNumber"
};
dynamodb.query(params, function(err, data) {
if (err)
console.log(JSON.stringify(err, null, 2));
else
console.log(JSON.stringify(data, null, 2));
});
,但我得到了以下错误:Invalid KeyConditionExpression: Syntax error; token: \":n\", near: \"IN :n\"",
是不是有什么毛病IN关键字? 也许有另一种方法来实现这一目标?
你试过“(verified =:v)AND(formattedPhone IN(:n))”吗? – jarmod
嗨!我只是尝试,但它没有奏效.. –
@HadrienPierreMazelier你可以粘贴你的工作示例 –