如何使用数组在FilterExpression中使用“ IN”语句-dynamodb [英] How to use “IN” statement in FilterExpression using array - dynamodb
本文介绍了如何使用数组在FilterExpression中使用“ IN”语句-dynamodb的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
已检查AWS文档,但未找到任何可行的示例。
Checked AWS document but did not find any working example.
这是我的尝试
var params = {
TableName: "User",
IndexName:"a-b-index",
KeyConditionExpression: "Country = :country and #s = :status",
FilterExpression: "Id IN (:e)",
ExpressionAttributeValues: {
":country ": "USA",
":status": 1,
":e": "1"
},
ExpressionAttributeNames: {"#s": "Status"}
};
//get users
dynamodb.query(params, function (err, data) {
if (err)
//error
else {
//success
}
});
获得记录,但它正在获取ID为 1 $ c的记录$ c>,但我想使用这样的数组
Got records but it is fetching record which have id 1
but i want to use array like this
var params = {
TableName: "User",
IndexName:"a-b-index",
KeyConditionExpression: "Country = :country and #s = :status",
FilterExpression: "Id IN (:e)",
ExpressionAttributeValues: {
":country ": "USA",
":status": 1,
":e": ["1","2","3"]
},
ExpressionAttributeNames: {"#s": "Status"}
};
//get users
dynamodb.query(params, function (err, data) {
if (err)
//error
else {
//success
}
});
如何使上面的代码工作。想要获取记录。语法正确,查询运行没有错误,但我没有得到记录
How can make above code as working.want to get records. syntax is correct and query run without error but i am not getting records
推荐答案
请参阅此答案
摘要:-
对于 IN子句中固定数量的值:-
var params = {
TableName : "Users",
FilterExpression : "username IN (:user1, :user2)",
ExpressionAttributeValues : {
":user1" : "john",
":user2" : "mike"
}
};
要获取数组中的更多元素并动态形成FilterExpression:-
var titleValues = ["The Big New Movie 2012", "The Big New Movie"];
var titleObject = {};
var index = 0;
titleValues.forEach(function(value) {
index++;
var titleKey = ":titlevalue"+index;
titleObject[titleKey.toString()] = value;
});
var params = {
TableName : "Movies",
FilterExpression : "title IN ("+Object.keys(titleObject).toString()+ ")",
ExpressionAttributeValues : titleObject
};
这篇关于如何使用数组在FilterExpression中使用“ IN”语句-dynamodb的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文