Dynamodb查询 - KeyConditionExpression中的OR条件

时间:2015-08-19 15:40:12

标签: amazon-web-services amazon-dynamodb

我有一个带" feed_guid"的动态表。作为全球二级指数。我想查询该表中的一组feed_guid。因为" feed_guid"不是我的主键,所以我不能使用getBatchItem。当我尝试以下方法时,我收到此错误" KeyConditionExpression中使用的无效运算符:OR"。

var userName = HttpContext.Current.User.Identity.Name.ToString();

2 个答案:

答案 0 :(得分:4)

为了达到你想要的目的,你需要结合两个不同的查询。

目前,DynamoDB的Query API仅支持在KeyConditionExpression中对哈希和范围键设置一个条件,因为这会限制您搜索的项目,并最终降低比较复杂查询的成本,例如您&# 39;我在这里描述。

答案 1 :(得分:3)

您不能使用OR条件。您应该使用rangeAttributeName BETWEEN:rangeval1 AND:rangeval2(如果可能)或feed_guid IN(:v_guid1,:v_guid2)。

请参阅ExpressionAttributeValuesKeyConditionExpression