本文介绍了在AWS DynamoDb上查询Range键的最大值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
什么是DynamoDB等效项?
What is the DynamoDB equivalent of
SELECT MAX(RANGE_KEY) FROM MYTABLE WHERE PRIMARYKEY = "value"
我能想到的最好的是
from boto.dynamodb2.table import Table as awsTable
tb = awsTable("MYTABLE")
rs = list(tb.query_2(PRIMARYKEY__eq="value", reverse=True, limit=1))
MAXVALUE = rs[0][RANGE_KEY]
有更好的方法吗?
推荐答案
那是正确的方法。
由于哈希键匹配的记录按范围键排序,因此按后代顺序获得第一个记录将为您提供最大范围键的记录。 / p>
Because the records matched by the Hash Key are sorted by the Range Key, getting the first one by the descendant order will give you the record with the maximum range key.
查询和扫描操作-Amazon DynamoDB:
Query and Scan Operations - Amazon DynamoDB : http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html
注意:通过boto API将 reverse
参数设置为true等同于设置 ScanIndexForward
通过本地AWS API设置为false。
NOTE: Setting the reverse
parameter to true via boto API is equivalent to setting ScanIndexForward
to false via the native AWS API.
这篇关于在AWS DynamoDb上查询Range键的最大值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!