我有一张桌子,每天都有一篇文章,看起来像这样。
我将date
设置为主键,将post_id
设置为排序键。我想通过date
创建一个获取最新行的查询。是否可以使用Query执行此操作?或者我必须使用扫描并过滤掉它?
答案 0 :(得分:1)
首先,DynamoDB没有像min
和max
这样的聚合函数,比如RDBMS聚合函数。但是,它确实有一个功能可以从表中获取最新日期。要使用该选项,应将该属性定义为SORT
密钥。此外,只能找到特定分区键的最新日期,即它不适用于整个表,只适用于所选的分区键。
ScanIndexForward
可用于获取特定分区键的最新项目。
ScanIndexForward - (布尔值)指定索引遍历的顺序: 如果为true(默认),则以递增顺序执行遍历;如果 false,遍历按降序执行。
为了使用上述选项,必须更改表格设计。
post_id - 分区键
日期 - 排序键