Operator UNION dan UNION ALL dalam SQL

Operator UNION dalam SQL

Operator UNION digunakan untuk menggabungkan hasil set dari dua atau lebih pernyataan SELECT.

Perhatikan, pernyataan SELECT dalam UNION harus memiliki jumlah kolom yang sama. Kolom juga harus memiliki tipe data yang serupa. Selain itu, urutan kolom dalam setiap pernyataan SELECT harus sama.

Gramatika UNION SQL

SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2

Keterangan:Secara default, operator UNION memilih nilai yang berbeda. Jika mengizinkan nilai yang berulang, gunakan UNION ALL.

Gramatika UNION ALL SQL

SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2

Selain itu, nama kolom di dalam hasil UNION selalu sama dengan nama kolom di perintah SELECT pertama di UNION.

Contoh tabel yang digunakan di contoh di bawah ini:

Employees_China:

E_ID E_Name
01 Zhang, Hua
02 Wang, Wei
03 Carter, Thomas
04 Yang, Ming

Employees_USA:

E_ID E_Name
01 Adams, John
02 Bush, George
03 Carter, Thomas
04 Gates, Bill

Menggunakan perintah UNION

Contoh

Daftar semua karyawan yang berbeda di China dan Amerika Serikat:

SELECT E_Name FROM Employees_China
UNION
SELECT E_Name FROM Employees_USA

Hasil

E_Name
Zhang, Hua
Wang, Wei
Carter, Thomas
Yang, Ming
Adams, John
Bush, George
Gates, Bill

Keterangan:Perintah ini tidak dapat menampilkan semua karyawan di China dan Amerika Serikat. Dalam contoh di atas, kami memiliki dua karyawan dengan nama yang sama, hanya satu diantaranya yang terdaftar. Perintah UNION hanya akan memilih nilai yang berbeda.

UNION ALL

Perintah UNION ALL dan UNION hampir sama, tetapi perintah UNION ALL akan menampilkan semua nilai.

SQL Perintah 1
UNION ALL
SQL Perintah 2

Menggunakan perintah UNION ALL

Contoh:

Daftar semua karyawan di China dan Amerika Serikat:

SELECT E_Name FROM Employees_China
UNION ALL
SELECT E_Name FROM Employees_USA

Hasil

E_Name
Zhang, Hua
Wang, Wei
Carter, Thomas
Yang, Ming
Adams, John
Bush, George
Carter, Thomas
Gates, Bill