Le type de données String doit être utilisé pour Date ou Timestamp.
Vous pouvez utiliser le type de données String pour représenter une date ou un horodatage. Une façon de procéder consiste à utiliser des chaînes ISO 8601, comme indiqué dans ces exemples:
15/02/2016
2015-12-21T17: 42: 34Z
20150311T122706Z
Type de données DynamoDB pour la date ou l'horodatage
Oui, les requêtes Range sont prises en charge lorsque la date est stockée sous forme de chaîne. L' ENTRE peut être utilisé sur FilterExpresssion. J'ai les éléments dans le résultat en utilisant les expressions de filtre ci-dessous.
FilterExpression sans temps: -
FilterExpression : 'createdate between :val1 and :val2',
ExpressionAttributeValues : {
':hkey' : year_val,
':rkey' : title,
":val1" : "2010-01-01",
":val2" : "2010-12-31"
}
FilterExpression avec le temps: -
FilterExpression : 'createdate between :val1 and :val2',
ExpressionAttributeValues : {
':hkey' : year_val,
':rkey' : title,
":val1" : "2010-01-01T00:00:00",
":val2" : "2010-12-31T00:00:00"
}
Valeurs de la base de données: -
Format 1 - avec fuseau horaire:
{"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 - sans fuseau horaire: -
{"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."}}}}}