Query dynamoDB with key condition 'GE' on a hash key

﹥>﹥吖頭↗ 提交于 2019-12-24 05:52:02

问题


I'm trying to run a query on a dynamoDB table with the key condition as such

KeyConditions: {
  userID: {
    ComparisonOperator: 'GE',
    AttributeValueList: [{N: '0'}]
  }
}

When I run this query with the ComparisonOperator as 'EQ' no problems occur. However when it's 'GE' I get an error stating that the query key condition is not supported.

Note that userID is a hash key


回答1:


From the Dynamo DB Query Documentation:

A Query operation directly accesses items from a table using the table primary key, or from an index using the index key. You must provide a specific hash key value. You can narrow the scope of the query by using comparison operators on the range key value, or on the index key. You can use the ScanIndexForward parameter to get results in forward or reverse order, by range key or by index key.

You must provide a hash key to query Dynamo DB. You could accomplish what you're trying to do with a Scan operation or with multiple Query operations, but there's no way to specify a condition other than equals for a hash key in DynamoDB.



来源:https://stackoverflow.com/questions/22696538/query-dynamodb-with-key-condition-ge-on-a-hash-key

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!