在AWS DynamoDB中按字符串数组查询

时间:2016-04-04 15:38:39

标签: node.js database amazon-dynamodb

使用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检查动态数组中的每个元素。

当然,这个特定的实现会返回类型不匹配,但我不确定如何正确执行此操作

1 个答案:

答案 0 :(得分:3)

DynamoDB API不支持此功能,并且它仍将被视为来自DynamoDB吞吐量角度的多个读取请求。

如果您需要查询多个值,则需要在应用程序中自己实现该逻辑。基本上在值上写一个循环来查询并为每个值发出查询。这就是Dynamo无论如何都会做服务器端的事情。