はじめに
今さらだがDynamoDBのクエリパラメータについてまとめる。
既に他の人が同じような記事を書いているかもしれないが、
AWSのドキュメントを読んでいて、
「分かりづらいから一覧でまとめてくれ!!」と思い
あくまで自分のためのメモとして残す。
他のDB操作パラメータについては必要が出てきたら追記するつもり。
Query Parameters
TableName
- 文字通りテーブル名を指定する
KeyConditionExpression
- プライマリーキー(パーティションキー、ソートキー)、セカンダリーインデックスに対する条件式を記述する
- DynamoDB予約語でなければ、後述のExpressionAttributeNamesでプレースホルダーを指定しなくてもそのまま使える
- 例
ExpressionAttributeNames
- KeyConditionExpressionで使う属性名のプレースホルダーを定義する
- オブジェクト文字列で指定する
- #を接頭辞としてつけるのが必須
- 例
ExpressionAttributeValues
- KeyConditionExpressionで使う属性値のプレースホルダーを定義する
- オブジェクトで指定
- 接頭辞としてコロン:をつけるのが必須
- 例
FilterExpression
- テーブルからのクエリ実行後に、APIとしての戻り値をフィルタリングするための条件式を書く
- ExpressionAttributeNames, ExpressionAttributeValuesで定義したプレースホルダーを使って、KeyConditionExpressionと同様にして書ける