翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
BY 句を使用したドキュメント ID のクエリの実行
重要
サポート終了通知: 既存のお客様は、07/31/2025 のサポート終了QLDBまで Amazon を使用できます。詳細については、「Amazon Ledger QLDB を Amazon Aurora Postgre に移行するSQL
一意の識別子 (車両の などVIN) を意図したフィールドを定義できますが、ドキュメントの真の一意の識別子は、「」で説明されているようにid
メタデータフィールドですドキュメントの挿入。このため、id
フィールドを使用して、各テーブル間の関係を作成できます。
ドキュメントの id
フィールドは、コミット済みビューでのみ直接アクセスできますが、BY
句を使用すれば、デフォルトのユーザービューに射影することもできます。例として、以下のクエリとその結果を参照してください。
SELECT r_id, r.VIN, r.LicensePlateNumber, r.State, r.City, r.Owners FROM VehicleRegistration AS r BY r_id WHERE r_id = '
3Qv67yjXEwB9SjmvkuG6Cp
'
{
r_id: "3Qv67yjXEwB9SjmvkuG6Cp",
VIN: "1N4AL11D75C109151",
LicensePlateNumber: "LEWISR261LL",
State: "WA",
City: "Seattle",
Owners: {
PrimaryOwner: { PersonId: "294jJ3YUoH1IEEm8GSabOs" },
SecondaryOwners: [{ PersonId: "5Ufgdlnj06gF5CWcOIu64s" }]
}
}
このクエリで、r_id
は、BY
キーワードを使用して FROM
句で宣言されているユーザー定義のエイリアスです。この r_id
エイリアスは、クエリの結果セットで各ドキュメントの id
メタデータフィールドにバインドされます。SELECT
句とユーザービューのクエリの WHERE
句にこのエイリアスを使用できます。
ただし、他のメタデータの属性にアクセスするには、コミット済みビューでクエリを実行する必要があります。
ドキュメント ID での結合
あるテーブルのドキュメント id
を別のテーブルのユーザー定義フィールド内の外部キーとして使用しているとします。BY
句を使用すると、これらのフィールドに 2 つのテーブルの内部結合クエリを記述できます (前のトピックの「コミットされたビューとユーザービューへの参加」と同様)。
次の例は、DriversLicense
の Person
と PersonId
という名前の 2 つのテーブルをドキュメント id
のフィールドとそれぞれ結合します。後者には BY
句を使用します。
SELECT * FROM DriversLicense AS d INNER JOIN Person AS p BY pid ON d.PersonId = pid WHERE pid = '
1CWScY2qHYI9G88C2SjvtH
'
テーブル内のドキュメントを変更する方法については、「ドキュメントの更新と削除」に進みます。