Typ danych String należy stosować datę lub datownik.
Możesz użyć typu danych String, aby przedstawić datę lub znacznik czasu. Jednym ze sposobów jest użycie ciągów ISO 8601, jak pokazano w poniższych przykładach:
2016-02-15
2015-12-21T17: 42: 34Z
20150311T122706Z
Typ danych DynamoDB dla daty lub znacznika czasu
Tak, zapytania o zakres są obsługiwane, gdy data jest przechowywana jako ciąg. MIĘDZY może być stosowany na FilterExpresssion. Otrzymałem elementy w wyniku za pomocą poniższych wyrażeń filtrujących.
Wyrażenie filtra bez czasu: -
FilterExpression : 'createdate between :val1 and :val2',
ExpressionAttributeValues : {
':hkey' : year_val,
':rkey' : title,
":val1" : "2010-01-01",
":val2" : "2010-12-31"
}
Wyrażenie filtra z czasem: -
FilterExpression : 'createdate between :val1 and :val2',
ExpressionAttributeValues : {
':hkey' : year_val,
':rkey' : title,
":val1" : "2010-01-01T00:00:00",
":val2" : "2010-12-31T00:00:00"
}
Wartości bazy danych: -
Format 1 - ze strefą czasową:
{"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 - bez strefy czasowej: -
{"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."}}}}}