Date RangeKey 的 DynamoDB 排序顺序
DynamoDB sort order of Date RangeKey
我有一个具有以下键值的 DynamoDB table:一个简单的字符串 ID HashKey
和一个表示日期的字符串 RangeKey
。日期字符串采用 YYYY-MM-DD
格式。
我现在想知道 DynamoDB 如何对其条目进行排序。当我在同一个 HashKey
上查询多个 RangeKey
值时,结果按日期升序排序。
但是,根据 Dynamo documentation,它会根据 UTF-8 字节值对所有非整数 RangeKey 进行排序。
当我现在保存以下 RangeKey 条目时:
2019-01-01
2018-12-04
2018-12-05
简单 DynamoDBMapper.query(...)
的输出导致正确的顺序:
2018-12-04
2018-12-05
2019-01-01
Dynamo 是按日期对 RangeKey 进行排序还是字节值的计算方式与日期表示相匹配?
正在以 UTF-8 字节排序。它不知道您正在对 DynamoDB 的日期进行排序,它只是一个字符串。
我有一个具有以下键值的 DynamoDB table:一个简单的字符串 ID HashKey
和一个表示日期的字符串 RangeKey
。日期字符串采用 YYYY-MM-DD
格式。
我现在想知道 DynamoDB 如何对其条目进行排序。当我在同一个 HashKey
上查询多个 RangeKey
值时,结果按日期升序排序。
但是,根据 Dynamo documentation,它会根据 UTF-8 字节值对所有非整数 RangeKey 进行排序。
当我现在保存以下 RangeKey 条目时:
2019-01-01
2018-12-04
2018-12-05
简单 DynamoDBMapper.query(...)
的输出导致正确的顺序:
2018-12-04
2018-12-05
2019-01-01
Dynamo 是按日期对 RangeKey 进行排序还是字节值的计算方式与日期表示相匹配?
正在以 UTF-8 字节排序。它不知道您正在对 DynamoDB 的日期进行排序,它只是一个字符串。