如何使用AWS SDK在DynamoDB中订购?

时间:2012-03-04 23:34:50

标签: ruby amazon-dynamodb

目前,我的范围值是Time.now.to_f获得的BigDecimal,我想要检索用户的所有文档,如下所示:

table = dynamo_db.tables['some_table']
table.load_schema
docs = table.items.where(:user_id => user_id).select.map {|i| i.attributes}

docs按范围值降序排序。

1 个答案:

答案 0 :(得分:3)

在深入研究SDK源代码之后,我能够为方法AWS :: DynamoDB :: ItemCollection#query

找到这个有用的小块。
  # @option [Boolean] :scan_index_forward (true) Specifies which
  #   order records will be returned.  Defaults to returning them
  #   in ascending range key order.  Pass false to reverse this.

由于我的user_id是哈希值,因此我能够将查询修改为:

docs = table.items.query(:hash_value => user_id, :scan_index_forward => false).select.map {|i| i.attributes}