Menggunakan klausa BY untuk menanyakan ID dokumen - Database Buku Besar Amazon Quantum (AmazonQLDB)

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan klausa BY untuk menanyakan ID dokumen

penting

Pemberitahuan akhir dukungan: Pelanggan yang ada akan dapat menggunakan Amazon QLDB hingga akhir dukungan pada 07/31/2025. Untuk detail selengkapnya, lihat Memigrasi QLDB Buku Besar Amazon ke Amazon Aurora Postgre. SQL

Meskipun Anda dapat menentukan bidang yang dimaksudkan untuk menjadi pengidentifikasi unik (misalnya, kendaraanVIN), pengidentifikasi unik sebenarnya dari dokumen adalah bidang id metadata, seperti yang dijelaskan dalam. Menyisipkan dokumen Untuk alasan ini, Anda dapat menggunakan id bidang untuk membuat hubungan antar tabel.

idBidang dokumen hanya dapat diakses secara langsung dalam tampilan komit, tetapi Anda juga dapat memproyeksikannya dalam tampilan pengguna default dengan menggunakan BY klausa. Sebagai contoh, lihat query berikut dan hasilnya.

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" }] } }

Dalam query ini, r_id adalah alias yang ditentukan pengguna yang dideklarasikan dalam FROM klausa, menggunakan kata kunci. BY r_idAlias ini mengikat bidang id metadata untuk setiap dokumen dalam kumpulan hasil kueri. Anda dapat menggunakan alias ini dalam SELECT klausa dan juga dalam WHERE klausa kueri dalam tampilan pengguna.

Namun, untuk mengakses atribut metadata lainnya, Anda harus menanyakan tampilan yang dikomit.

Bergabung pada ID dokumen

Misalkan Anda menggunakan dokumen id dari satu tabel sebagai kunci asing di bidang yang ditentukan pengguna dari tabel lain. Anda dapat menggunakan BY klausa untuk menulis kueri gabungan batin untuk dua tabel di bidang ini (mirip Bergabung dengan pandangan yang berkomitmen dan pengguna dengan topik sebelumnya).

Contoh berikut menggabungkan dua tabel bernama DriversLicense dan Person pada id bidang PersonId dan dokumen masing-masing, menggunakan BY klausa untuk yang terakhir.

SELECT * FROM DriversLicense AS d INNER JOIN Person AS p BY pid ON d.PersonId = pid WHERE pid = '1CWScY2qHYI9G88C2SjvtH'

Untuk mempelajari cara membuat perubahan pada dokumen di tabel Anda, lanjutkan keMemperbarui dan menghapus dokumen.