Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Aturan analisis daftar
catatan
Berlaku untuk: AWS Clean Rooms SQL analytics engine
Dalam AWS Clean Rooms, aturan analisis daftar menampilkan daftar tingkat baris tumpang tindih antara tabel yang dikonfigurasi yang ditambahkan dan tabel yang dikonfigurasi dari anggota yang dapat melakukan kueri. Anggota yang dapat melakukan kueri menjalankan kueri yang menyertakan aturan analisis daftar.
Jenis aturan analisis daftar mendukung penggunaan kasus seperti pengayaan dan pembangunan audiens.
Untuk informasi selengkapnya tentang struktur kueri dan sintaks yang telah ditentukan untuk aturan analisis ini, lihat. Daftar aturan analisis struktur yang telah ditentukan
Parameter aturan analisis daftar, didefinisikan dalamAturan analisis daftar - kontrol kueri, memiliki kontrol kueri. Kontrol kuerinya mencakup kemampuan untuk memilih kolom yang dapat dicantumkan dalam output. Kueri diperlukan untuk memiliki setidaknya satu gabungan dengan tabel yang dikonfigurasi dari anggota yang dapat melakukan kueri, baik secara langsung maupun transitif.
Tidak ada kontrol hasil kueri seperti yang ada untuk aturan analisis Agregasi.
Kueri daftar hanya dapat menggunakan operator matematika. Mereka tidak dapat menggunakan fungsi lain (seperti agregasi atau skalar).
Topik
Daftar struktur kueri dan sintaks
Kueri pada tabel yang memiliki aturan analisis daftar harus mematuhi sintaks berikut.
--
select_list_expression
SELECT [TOP number ] DISTINCT column_name [[AS] column_alias ] [, ...] --table_expression
FROM table_name [[AS] table_alias ] [[INNER] JOIN table_name [[AS] table_alias] ON join_condition] [...] --where_expression
[WHERE where_condition] --limit_expression
[LIMIT number]
Tabel berikut menjelaskan setiap ekspresi yang tercantum dalam sintaks sebelumnya.
Ekspresi | Definisi | Contoh |
---|---|---|
|
Daftar dipisahkan koma yang berisi setidaknya satu nama kolom tabel. Diperlukan catatanKolom alias Ini juga mendukung |
|
|
Sebuah tabel, atau gabungan tabel, dengan
|
|
|
Ekspresi kondisional yang mengembalikan Boolean. Ini dapat terdiri dari yang berikut:
Kondisi perbandingan yang didukung adalah ( Operator logis yang didukung adalah (
|
|
|
Ekspresi ini harus mengambil bilangan bulat positif. Itu juga dapat dipertukarkan dengan parameter TOP.
|
|
Untuk struktur kueri daftar dan sintaks, perhatikan hal berikut:
-
Perintah SQL selain SELECT tidak didukung.
-
Subquery dan ekspresi tabel umum (misalnya, WITH) tidak didukung
-
MEMILIKI, GROUP BY, dan ORDER BY klausa tidak didukung
-
Parameter OFFSET tidak didukung
Aturan analisis daftar - kontrol kueri
Dengan kontrol kueri daftar, Anda dapat mengontrol bagaimana kolom dalam tabel Anda digunakan untuk menanyakan tabel. Misalnya, Anda dapat mengontrol kolom mana yang digunakan untuk bergabung, atau kolom mana yang dapat digunakan dalam pernyataan SELECT dan WHERE klausa.
Bagian berikut menjelaskan setiap kontrol.
Bergabunglah dengan kontrol
Dengan kontrol Gabung, Anda dapat mengontrol bagaimana tabel Anda dapat digabungkan ke tabel lain di table_expression. AWS Clean Rooms hanya mendukung INNER BERGABUNG. Dalam aturan analisis daftar, setidaknya satu INNER BERGABUNG diperlukan dan anggota yang dapat meminta diminta untuk menyertakan tabel yang mereka miliki di INNER BERGABUNG. Ini berarti mereka harus menggabungkan meja Anda dengan meja mereka, baik secara langsung maupun transitif.
Berikut ini adalah contoh transitivitas.
ON my_table.identifer = third_party_table.identifier .... ON third_party_table.identifier = member_who_can_query_table.id
INNER Pernyataan JOIN hanya dapat menggunakan kolom yang secara eksplisit dikategorikan sebagai aturan analisis joinColumn
Anda.
Bagian INNER JOIN harus beroperasi pada joinColumn
dari tabel yang dikonfigurasi dan joinColumn
dari tabel lain yang dikonfigurasi dalam kolaborasi. Anda memutuskan kolom mana dari tabel Anda dapat digunakan sebagaijoinColumn
.
Setiap kondisi pertandingan dalam ON klausa diperlukan untuk menggunakan kondisi perbandingan kesetaraan (=
) antara dua kolom.
Beberapa kondisi pertandingan dalam satu ON klausa dapat berupa:
-
Dikombinasikan menggunakan operator
AND
logis -
Dipisahkan menggunakan operator
OR
logis
catatan
Semua JOIN kondisi pertandingan harus cocok dengan satu baris dari setiap sisi JOIN. Semua kondisional yang dihubungkan oleh OR
atau operator AND
logis harus mematuhi persyaratan ini juga.
Berikut ini adalah contoh dari query dengan operator AND
logis.
SELECT some_col, other_col FROM table1 JOIN table2 ON table1.id = table2.id AND table1.name = table2.name
Berikut ini adalah contoh dari query dengan operator OR
logis.
SELECT some_col, other_col FROM table1 JOIN table2 ON table1.id = table2.id OR table1.name = table2.name
Kontrol | Definisi | Penggunaan |
---|---|---|
joinColumns |
Kolom yang ingin Anda izinkan anggota yang dapat kueri untuk digunakan di INNER Pernyataan BERGABUNG. |
Kolom yang sama tidak dapat dikategorikan sebagai a
|
Kontrol daftar
Kontrol daftar mengontrol kolom yang dapat dicantumkan dalam output kueri (yaitu, digunakan dalam pernyataan SELECT) atau digunakan untuk memfilter hasil (yaitu, digunakan dalam WHERE pernyataan).
Kontrol | Definisi | Penggunaan |
---|---|---|
listColumns |
Kolom yang Anda izinkan anggota yang dapat kueri untuk digunakan dalam SELECT dan WHERE | A listColumn dapat digunakan di SELECT dan WHERE.Kolom yang sama tidak dapat digunakan sebagai a |
Daftar aturan analisis struktur yang telah ditentukan
Contoh berikut mencakup struktur yang telah ditentukan yang menunjukkan bagaimana Anda menyelesaikan aturan analisis daftar.
Dalam contoh berikut,
mengacu pada tabel data Anda. Anda dapat mengganti masing-masing MyTable
user input placeholder
dengan informasi Anda sendiri.
{ "joinColumns": [
MyTable column name(s)
], "listColumns": [MyTable column name(s)
], }
Aturan analisis daftar - contoh
Contoh berikut menunjukkan bagaimana dua perusahaan dapat berkolaborasi dalam AWS Clean Rooms menggunakan analisis daftar.
Perusahaan A memiliki data manajemen hubungan pelanggan (CRM). Perusahaan A ingin mendapatkan data segmen tambahan pada pelanggannya untuk mempelajari lebih lanjut tentang pelanggan mereka dan berpotensi menggunakan atribut sebagai masukan ke dalam analisis lain. Perusahaan B memiliki data segmen yang terdiri dari atribut segmen unik yang mereka buat berdasarkan data pihak pertama mereka. Perusahaan B ingin memberikan atribut segmen unik kepada Perusahaan A hanya pada pelanggan yang tumpang tindih antara data mereka dan data Perusahaan A.
Perusahaan memutuskan untuk berkolaborasi sehingga Perusahaan A dapat memperkaya data yang tumpang tindih. Perusahaan A adalah anggota yang dapat menanyakan, dan Perusahaan B adalah kontributor.
Untuk membuat kolaborasi dan menjalankan analisis daftar secara kolaborasi, perusahaan melakukan hal berikut:
-
Perusahaan A menciptakan kolaborasi dan menciptakan keanggotaan. Kolaborasi ini memiliki Perusahaan B sebagai anggota lain dalam kolaborasi tersebut. Perusahaan A memungkinkan pencatatan kueri dalam kolaborasi, dan memungkinkan pencatatan kueri di akunnya.
-
Perusahaan B menciptakan keanggotaan dalam kolaborasi. Ini memungkinkan pencatatan kueri di akunnya.
-
Perusahaan A membuat tabel yang dikonfigurasi CRM
-
Perusahaan A menambahkan aturan analisis ke tabel yang dikonfigurasi pelanggan, seperti yang ditunjukkan pada contoh berikut.
{ "joinColumns": [ "identifier1", "identifier2" ], "listColumns": [ "internalid", "segment1", "segment2", "customercategory" ] }
joinColumns
Perusahaan A ingin menggunakanhashedemail
dan/atauthirdpartyid
(diperoleh dari vendor identitas) untuk mencocokkan pelanggan dari data CRM ke pelanggan dari data segmen. Ini akan membantu memastikan Perusahaan A mencocokkan data yang diperkaya untuk pelanggan yang tepat. Mereka memiliki dua JoinColumns untuk berpotensi meningkatkan tingkat kecocokan analisis.listColumns
— Perusahaan A menggunakanlistColumns
untuk mendapatkan kolom yang diperkaya di samping yanginternalid
mereka gunakan dalam sistem mereka sendiri. Mereka menambahkansegment1
,segment2
, dancustomercategory
berpotensi membatasi pengayaan ke segmen tertentu dengan menggunakannya dalam filter. -
Perusahaan B membuat tabel dikonfigurasi segmen.
-
Perusahaan B menambahkan aturan analisis ke tabel yang dikonfigurasi segmen.
{ "joinColumns": [ "identifier2" ], "listColumns": [ "segment3", "segment4" ] }
joinColumns
— Perusahaan B memungkinkan Perusahaan A untuk bergabungidentifier2
untuk mencocokkan pelanggan dari data segmen ke data CRM. Perusahaan A dan Perusahaan B bekerja dengan vendor identitas untuk mendapatkanidentifier2
mana yang cocok untuk kolaborasi ini. Mereka tidak menambahkan yang lainjoinColumns
karena mereka percayaidentifier2
memberikan tingkat kecocokan tertinggi dan paling akurat dan pengidentifikasi lain tidak diperlukan untuk kueri.listColumns
Perusahaan B memungkinkan Perusahaan A untuk memperkaya data mereka dengansegment3
dansegment4
atribut yang merupakan atribut unik yang telah mereka buat, kumpulkan, dan selaraskan (dengan pelanggan A) untuk menjadi bagian dari pengayaan data. Mereka ingin Perusahaan A mendapatkan segmen ini untuk tumpang tindih pada tingkat baris karena ini adalah kolaborasi pengayaan data. -
Perusahaan A menciptakan asosiasi tabel CRM untuk kolaborasi.
-
Perusahaan B menciptakan asosiasi tabel segmen untuk kolaborasi.
-
Perusahaan A menjalankan kueri, seperti yang berikut untuk memperkaya data pelanggan yang tumpang tindih.
SELECT companyA.internalid, companyB.segment3, companyB.segment4 INNER JOIN returns companyB ON companyA.identifier2 = companyB.identifier2 WHERE companyA.customercategory > 'xxx'
-
Perusahaan A dan Perusahaan B meninjau log kueri. Perusahaan B memverifikasi bahwa kueri sejalan dengan apa yang disepakati dalam perjanjian kolaborasi.