テーブルに対するクエリの実行 - Amazon DynamoDB

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

テーブルに対するクエリの実行

もう 1 つの一般的なアクセスパターンは、クエリ条件に基づき、テーブルから複数の項目を読み込むことです。

トピック

SQL

SQL SELECT ステートメントは、キー列、非キー列、または任意の組み合わせに対してクエリを実行できます。WHERE 句は、次の例に示すように、返る行を決定します。

/* Return a single song, by primary key */ SELECT * FROM Music WHERE Artist='No One You Know' AND SongTitle = 'Call Me Today';
/* Return all of the songs by an artist */ SELECT * FROM Music WHERE Artist='No One You Know';
/* Return all of the songs by an artist, matching first part of title */ SELECT * FROM Music WHERE Artist='No One You Know' AND SongTitle LIKE 'Call%';
/* Return all of the songs by an artist, with a particular word in the title... ...but only if the price is less than 1.00 */ SELECT * FROM Music WHERE Artist='No One You Know' AND SongTitle LIKE '%Today%' AND Price < 1.00;

このテーブルのプライマリキーが、Artist および SongTitle で構成されていることに注意してください。

DynamoDB

PartiQL

DynamoDB では、ExecuteStatementselect ステートメントを使用して複数の項目を取得するためのアクション。

select AlbumTitle, Year, Price FROM Music WHERE Artist='No One You Know'

このステートメントは、指定されたArtistのすべてのアイテムを返すことに注意してください。

を使用したコード例については、SelectおよびExecuteStatement「」を参照してください。DynamoDB の PartiQL 選択ステートメント

Classic API

Amazon DynamoDBQueryアクションを使用すると、同様の方法でデータを取得できます。Queryアクションは、データが保存されている物理的な場所にすばやく効率的にアクセスすることができます。詳細については、「パーティションとデータ分散」を参照してください。

Query は、複合プライマリキー (パーティションキーとソートキー) のある任意のテーブルで使用できます。パーティションキーに対して等価条件を指定する必要があります。必要に応じて、ソートキーに対して別の条件を指定できます。

KeyConditionExpression パラメータは、クエリを実行するキー値を指定します。オプションの FilterExpression を使用して、結果が返される前に、そこから特定の項目を削除できます。

DynamoDB では、ExpressionAttributeValues式パラメータ (KeyConditionExpressionおよびFilterExpression). これは、バインド変数をリレーショナルデータベースに置換します。ここでは、実際の値をSELECT実行時にステートメントを使用します。

このテーブルのプライマリキーが、Artist および SongTitle で構成されていることに注意してください。

以下に DynamoDB をいくつか示します。Queryの例。

// Return a single song, by primary key { TableName: "Music", KeyConditionExpression: "Artist = :a and SongTitle = :t", ExpressionAttributeValues: { ":a": "No One You Know", ":t": "Call Me Today" } }
// Return all of the songs by an artist { TableName: "Music", KeyConditionExpression: "Artist = :a", ExpressionAttributeValues: { ":a": "No One You Know" } }
// Return all of the songs by an artist, matching first part of title { TableName: "Music", KeyConditionExpression: "Artist = :a and begins_with(SongTitle, :t)", ExpressionAttributeValues: { ":a": "No One You Know", ":t": "Call" } }
注記

Query を使用したサンプルコードについては、「DynamoDB および AWS SDK の開始方法」を参照してください。