问题描述
因此,我需要按商品上的时间戳对查询结果进行排序,我发现可以使用ScanIndexForward
,但是怎么说呢,它需要比较时间戳?
谢谢! ?
解决方法
DynamoDB使用主键来唯一标识数据库中的项目。主键由分区键和可选 排序键组成。排序键使DynamoDB可以对数据进行排序。
出于说明目的,假设您想对电子邮件收件箱建模,允许用户按收到日期对电子邮件进行排序。您的表可能如下所示:
我将用户的电子邮件地址用作分区密钥(PK),并将时间戳记(接收日期)用作排序密钥(SK)。 PK和SK共同构成了唯一的主键,代表发给用户的一封电子邮件。
执行查询以获取用户电子邮件时,DynamoDB将使用“排序键”对结果进行排序。默认情况下,结果将按升序(ScanIndexForward=true
)如果要降序,则可以使用ScanIndexForward=false
。