DynamoDBにおいて日付順(新着順)でQueryしたいと考えけています。
データベースはハッシュキーとソートキーで構成しており、具体的なフォーマットは下記のようになっています。
ソートキーはISO 8601形式となっております。
- TYPE(パーティションキー):Transaction
- UID(ソートキー):2020-10-08T13:26:57+00:00
- Body:’適当なメッセージ’
#試した事
export const query_v2 = async(hashkey:string) => { const docClient = new AWS.DynamoDB.DocumentClient() const params = { TableName: 'MyTable', ExpressionAttributeNames:{ "#hash": "TYPE" }, ExpressionAttributeValues: { ":str": hashkey }, KeyConditionExpression: "#hash = :str", } return await docClient.query(params).promise() .then((res:any) => { return res.Items }) .catch((e) => { throw new Error(e) }) }
上記の関数を実行し帰ってきた値は、古い順でソートされた状態で帰ってきます。
DynamoDBでは、Date型(String)が存在し、検索すると日付順でソートして返す事が可能なようですが、何を試しても上手く行きませんでした。
アドバイスお願いします。
#追記
returnすると、配列が反転するようです。これって仕様ですか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。