当您的行同时使用散列键和范围键时,是否有办法从DynamoDB获取使用特定散列键的所有行?
实施例:
Hash Range
A B
A C
A D
E F
然后getItems(Hash = A)返回3行
答案 0 :(得分:2)
是的,可以使用查询API 。这是示例代码(Node JS)。
我有一个带有哈希键(年份密钥)和排序键(标题)的Movie
表。我已经使用哈希键查询了。我在结果中有四个项目,即1992年可用的四个项目。
var docClient = new AWS.DynamoDB.DocumentClient();
var table = "Movies";
var year_val = 1992;
var params = {
TableName : table,
KeyConditionExpression : 'yearkey = :hkey',
ExpressionAttributeValues : {
':hkey' : year_val
}
};
docClient.query(params, function(err, data) {
if (err) {
console.error("Unable to read item. Error JSON:", JSON.stringify(err,
null, 2));
} else {
console.log("GetItem succeeded:", JSON.stringify(data, null, 2));
}
});