Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:
Databricks SQL
Databricks Runtime
Menggabungkan subquery1 sebelumnya dan subquery2 menjadi satu. Azure Databricks mendukung tiga jenis operator set:
EXCEPTINTERSECTUNION
Sintaks
{ UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] subquery2 } [...]
-
Setiap dua klausa
subqueryseperti yang ditentukan dalam SELECT (subpilih). Kedua subkueri harus memiliki jumlah kolom yang sama dan memiliki jenis yang paling tidak umum untuk setiap kolom. UNION [SEMUA | UNIK]
Mengembalikan hasil
subquery1ditambah barissubquery2.Jika
ALLditentukan, baris duplikat dipertahankan.Jika
DISTINCTditentukan, hasilnya tidak berisi baris duplikat apa pun. Ini adalah default.INTERSECT [SEMUA | UNIK]
Menampilkan set baris yang ada di kedua subkueri.
Jika
ALLditentukan, baris yang muncul beberapa kali dalamsubquery1dansubqueryakan dikembalikan beberapa kali.Jika
DISTINCTditentukan, hasilnya tidak berisi baris duplikat. Ini adalah default.KECUALI [SEMUA | UNIK ]
Menampilkan baris dalam
subquery1yang tidak ada disubquery2.Jika
ALLditentukan, setiap baris dalamsubquery2akan menghapus salah satu dari beberapa kemungkinan kecocokan darisubquery1.Jika
DISTINCTditentukan, baris duplikat dihapus darisubquery1sebelum menerapkan operasi. Dengan begitu, semua kecocokan dihapus dan hasilnya tidak akan memiliki baris duplikat (cocok atau tidak cocok). Ini adalah default.Anda dapat menentukan
MINUSsebagai alternatif sintaks untukEXCEPT.
Ketika operasi set penautan INTERSECT memiliki prioritas yang lebih tinggi daripada UNION dan EXCEPT.
Jenis setiap kolom hasil adalah jenis yang paling tidak umum dari setiap kolom di subquery1 dan subquery2.
Jika kolom hasil adalah STRING kolasenya diturunkan dengan menerapkan aturan prioritas kolase ke kolom dalam subkueri.
Contoh
-- Use number1 and number2 tables to demonstrate set operators in this page.
> CREATE TEMPORARY VIEW number1(c) AS VALUES (3), (1), (2), (2), (3), (4);
> CREATE TEMPORARY VIEW number2(c) AS VALUES (5), (1), (1), (2);
> SELECT c FROM number1 EXCEPT SELECT c FROM number2;
3
4
> SELECT c FROM number1 MINUS SELECT c FROM number2;
3
4
> SELECT c FROM number1 EXCEPT ALL (SELECT c FROM number2);
3
3
4
> SELECT c FROM number1 MINUS ALL (SELECT c FROM number2);
3
3
4
> (SELECT c FROM number1) INTERSECT (SELECT c FROM number2);
1
2
> (SELECT c FROM number1) INTERSECT DISTINCT (SELECT c FROM number2);
1
2
> (SELECT c FROM number1) INTERSECT ALL (SELECT c FROM number2);
1
2
2
> (SELECT c FROM number1) UNION (SELECT c FROM number2);
1
3
5
4
2
> (SELECT c FROM number1) UNION DISTINCT (SELECT c FROM number2);
1
3
5
4
2
> SELECT c FROM number1 UNION ALL (SELECT c FROM number2);
3
1
2
2
3
4
5
1
1
2