使用Node.js,我使用二级索引查询DynamoDB中的对象:
TableName: "Products",
IndexName: 'MerchantAndDateIndex',
KeyConditionExpression: "#creator = :creatorId",
ExpressionAttributeNames:{
"#creator": "createdBy"
},
ExpressionAttributeValues: {
":creatorId": uuid
}
我想要做的是查询"产品"表" createdBy" hash key接受几个不同的可能字符串,如下所示:
ExpressionAttributeValues: {
":creatorId": ["multiple","valid","uuids","here"]
}
在运行查询时,根据表中的ID检查动态数组中的每个元素。
当然,这个特定的实现会返回类型不匹配,但我不确定如何正确执行此操作
答案 0 :(得分:3)
DynamoDB API不支持此功能,并且它仍将被视为来自DynamoDB吞吐量角度的多个读取请求。
如果您需要查询多个值,则需要在应用程序中自己实现该逻辑。基本上在值上写一个循环来查询并为每个值发出查询。这就是Dynamo无论如何都会做服务器端的事情。