在 DynamoDB 中,我有一个表格,每个记录都有两个日期属性:
我需要一种方法来基于
- 获取所有
通常情况下,我需要获取满足
其中一种实现方式是在每个记录中插入一个虚拟的固定属性,并创建一个索引,在该索引上将虚拟属性作为分区键,将
然后,我可以通过指定固定虚拟属性作为分区键、日期属性作为排序键,并使用任何比较操作符,例如
但是,这似乎并不好,看起来更像是一个 hack 而不是一个合适的解决方案/设计。是否有更好的解决方案呢?
create_date
和 last_modified_date
。这些日期的格式是 ISO-8601,例如:2016-01-22T16:19:52.464Z
。我需要一种方法来基于
create_date
和 last_modified_date
进行查询,例如:- 获取所有
create_date > [some_date]
的记录。
- 获取所有 last_modified_date < [some_date]
的记录。通常情况下,我需要获取满足
[date_attr] [comparison_op] [some_date]
的所有记录。其中一种实现方式是在每个记录中插入一个虚拟的固定属性,并创建一个索引,在该索引上将虚拟属性作为分区键,将
create_date
作为排序键(对于 last_modified_date
同理)。然后,我可以通过指定固定虚拟属性作为分区键、日期属性作为排序键,并使用任何比较操作符,例如
<
、>
、<=
、>=
等来进行查询。但是,这似乎并不好,看起来更像是一个 hack 而不是一个合适的解决方案/设计。是否有更好的解决方案呢?