amazon-dynamodb并按日期过滤

时间:2017-11-17 09:43:26

标签: amazon-dynamodb

我有一个dynamodb表,它有一个GlobalSecondaryIndex,日期字段作为keytype“range”的属性。值以ISO格式“YYYY-MM-DD”存储。 我想在节点中访问日期大于特定日期的记录。 它似乎与我的查询的参数一起使用:

KeyConditionExpression: 'myDate >= :myDate',
ExpressionAttributeValues: {   
    ':myDate': '2017-11-17'
}

但是我不太明白。从技术上讲,日期是一个字符串。信任字符串比较是否可靠,还是应该以不同的方式完成?

1 个答案:

答案 0 :(得分:2)

是的,只要日期以YYYY-MM-DD格式存储,您就可以转发此内容。

DynamoDB没有Date的单独数据类型。日期可以存储为字符串或数字。

Date    S (string type). The Date values are stored as ISO-8601 formatted strings.

将日期存储为字符串: -

  

您可以使用字符串数据类型来表示日期或时间戳。   一种方法是使用ISO 8601字符串,如下所示   示例:

  • 2016年2月15日

  • 2015-12-21T17:42:34Z

  • 20150311T122706Z

将日期存储为数字: -

  

您可以使用数字数据类型来表示日期或时间戳。   一种方法是使用纪元时间 - 从那以后的秒数   1970年1月1日00:00:00 UTC。例如,纪元时间1437136300   代表2015年7月17日12:31:40 UTC。

Data types