プロジェクション式
テーブルからデータを読み込むには、次のような GetItem
、Query
、または Scan
のオペレーションを使用します。Amazon DynamoDB は、デフォルトですべての項目属性を返します。すべての属性ではなく、一部の属性のみを取得するには、プロジェクション式を使用します。
プロジェクション式は、任意の属性を識別する文字列です。1 つの属性を取得するには、名前を指定します。複数の属性の場合、名前をカンマで区切る必要があります。
ProductCatalog
からの 式を使用する時の項目属性の指定 項目に基づく、プロジェクション式のいくつかの例を次に示します。
-
1 つの最上位属性。
Title
-
3 つの最上位属性。DynamoDB は
Color
セット全体を取得します。Title, Price, Color
-
4 つの最上位属性。DynamoDB は
RelatedItems
およびProductReviews
のコンテンツ全体を返します。Title, Description, RelatedItems, ProductReviews
最初の文字が a-z
または A-Z
であり、2 番目の文字(ある場合)が a-z
、A-Z
、または 0-9
である場合は、投影式で任意の属性値を使用できます。属性名がこの要件を満たさない場合は、式の属性名をプレースホルダーとして定義する必要があります。詳細については、「DynamoDB の式の属性名」を参照してください。
以下の AWS CLI の例に示しているのは、GetItem
オペレーションでプロジェクション式を使用する方法です。この式は最上位スカラー射影内の属性 (Description
)、リスト内の最初の要素 (RelatedItems[0]
)、およびマップ内に入れ子にするリスト (ProductReviews.FiveStar
) を取得します。
aws dynamodb get-item \ --table-name ProductCatalog \ --key file://key.json \ --projection-expression "Description, RelatedItems[0], ProductReviews.FiveStar"
--key
の引数は、ファイル key.json
に保存されます。
{ "Id": { "N": "123" } }
プログラミング言語別のコード例については、「DynamoDB および AWS SDK の使用開始」を参照してください。