DynamoDB检索最后一行

时间:2013-10-29 15:30:04

标签: php amazon-dynamodb

我需要一些DynamoDB的帮助。 我有以下表格:

| Shortener (Hash key) | ShortenedURL (Range key) | LongURL      |
|-----------------------------------------------------------------|
| "My webpage url"     | "1"                       | "example.net"|
| "My webpage url"     | "6"                       | "example.com"|
| "My webpage url"     | "4"                       | "example.eu" |

如何在“ShortenedURL”中检索编号最大的行? 我对DynamoDB& NoSQL的东西。使用AWS PHP SDK。 试图搜索几个小时,并没有找到任何有用的东西。我试过的所有内容都以“1”或“4”结果结束。

2 个答案:

答案 0 :(得分:2)

要完成此操作,您可以Query使用以下参数:

  • hashKey是“我的网页网址”
  • rangeKey
  • 没有条件
  • 限制是1(你只想要一件事)
  • withScanIndexForward = false(从最大到最小)

仅当您的rangeKey是数字类型时,这才有效。如果它是一个字符串,那么你只能得到字典顺序,所以“最后”可能很奇怪(这三个字符串按此顺序出现:["1, "10", "2", ...])。

答案 1 :(得分:0)

你的范围键是否必须是String? 如果它是一个数字,你可以选择它来检索最大的数字,因为范围键具有给它们订单的索引。

无论哪种方式,您都可以use the Query API并通过将ScanIndexForward指定为false来向后设置索引。