ノードラムダ機能を使用して日付範囲をスキャンしようとしています。データが正しくスキャンされていますが、日付式が正しく動作するように見えません。LambdaとDynamoDBを使用して日付範囲をスキャンする方法は?
var AWS = require('aws-sdk');
var dynamodb = new AWS.DynamoDB({apiVersion: '2012-08-10'});
exports.handler = function(event, context) {
var tableName = "MyDDBTable";
dynamodb.scan({
TableName : tableName,
FilterExpression: "start_date < :start_date",
ExpressionAttributeValues: {
":start_date": {
"S": "2016-12-01"
}
}
}, function(err, data) {
context.succeed(data);
});
};
これは現在、範囲を返そうとしていません。今はただちに日付を探しています。私はこれが働いていることが分かるまで、and
を式に追加したくなかった。私のDynamoDBの中
サンプル文書は、そのように構成されています
{
"end_date": {
"S": "2016-12-02"
},
"name": {
"S": "Name of document"
},
"start_date": {
"S": "2016-10-10"
},
"document_id": {
"N": "7"
}
}
document_id
は私の主キーです。私はこのLamdba/DynamoDBの組み合わせ全体でかなり新しいので、これは完全に間違って設定されているかもしれませんが、これが私の研究を通じて完成したものです。
私が最終的に達成しようとしているのは、開始日と終了日が与えられ、その範囲内の日付範囲を持つすべてのDynamoDB文書を返します。どんな助けでも大歓迎です。
可能な複製(http://stackoverflow.com/質問/ 35963243/how-to-query-dynamodb-date-range-key-with-no-obvious-hash-key) – kixorz