Der String-Datentyp sollte für Datum oder Zeitstempel verwendet werden.
Sie können den Datentyp String verwenden, um ein Datum oder einen Zeitstempel darzustellen. Eine Möglichkeit hierfür ist die Verwendung von ISO 8601-Zeichenfolgen, wie in den folgenden Beispielen gezeigt:
2016-02-15
2015-12-21T17: 42: 34Z
20150311T122706Z
DynamoDB-Datentyp für Datum oder Zeitstempel
Ja, die Bereichsabfragen werden unterstützt, wenn das Datum als Zeichenfolge gespeichert wird. Das ZWISCHEN kann in FilterExpresssion verwendet werden. Ich habe die Elemente im Ergebnis mit den folgenden Filterausdrücken erhalten.
FilterExpression ohne Zeit: -
FilterExpression : 'createdate between :val1 and :val2',
ExpressionAttributeValues : {
':hkey' : year_val,
':rkey' : title,
":val1" : "2010-01-01",
":val2" : "2010-12-31"
}
FilterExpression mit der Zeit: -
FilterExpression : 'createdate between :val1 and :val2',
ExpressionAttributeValues : {
':hkey' : year_val,
':rkey' : title,
":val1" : "2010-01-01T00:00:00",
":val2" : "2010-12-31T00:00:00"
}
Datenbankwerte: -
Format 1 - mit Zeitzone:
{"Item":{"createdate":{"S":"2010-12-21T17:42:34+00:00"},"title":{"S":"The Big New Movie 2010"},"yearkey":{"N":"2010"},"info":{"M":{"rating":{"N":"0"},"plot":{"S":"Nothing happens at all."}}}}}
Format 2 - ohne Zeitzone: -
{"Item":{"createdate":{"S":"2010-12-21T17:42:34Z"},"title":{"S":"The Big New Movie 2010"},"yearkey":{"N":"2010"},"info":{"M":{"rating":{"N":"0"},"plot":{"S":"Nothing happens at all."}}}}}