Latest web development tutorials

SQL UNION Operator

SQL UNION dan hasil operasi selama dua atau lebih SELECT pernyataan.


SQL UNION Operator

UNION hasil operasi operator yang ditetapkan digunakan untuk menggabungkan dua atau lebih SELECT pernyataan.

Harap dicatat, UNION dalam setiap pernyataan SELECT harus memiliki jumlah kolom yang sama. Kolom juga harus memiliki tipe data yang sama. Pada saat yang sama, urutan kolom dalam setiap pernyataan SELECT harus sama.

SQL UNION Sintaks

SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2 ;

Catatan: Secara default, operator UNION untuk memilih nilai yang berbeda.Jika Anda membiarkan nilai-nilai duplikat, gunakan UNION ALL.

SQL UNION ALL sintaks

SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2 ;

Catatan: UNION set hasil selalu sama dengan nama kolom dalam SELECT nama kolom pernyataan UNION pertama.


Demo Database

Dalam tutorial ini, kita akan menggunakan database contoh w3big.

Berikut ini adalah yang dipilih "Website" data tabel:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 本教程      | http://www.w3big.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

Berikut adalah "aplikasi" Data APP:

mysql> SELECT * FROM apps;
+----+------------+-------------------------+---------+
| id | app_name   | url                     | country |
+----+------------+-------------------------+---------+
|  1 | QQ APP     | http://im.qq.com/       | CN      |
|  2 | 微博 APP | http://weibo.com/       | CN      |
|  3 | 淘宝 APP | https://www.taobao.com/ | CN      |
+----+------------+-------------------------+---------+
3 rows in set (0.00 sec)


contoh SQL UNION

Pernyataan SQL berikut untuk memilih semua negara yang berbeda (hanya nilai yang berbeda) dari "Website" dan "aplikasi" tabel:

contoh

negara SELECT FROM Website
UNION
negara SELECT FROM aplikasi
ORDER BY negara;

Eksekusi SQL atas hasil output adalah sebagai berikut:

Catatan: UNION berisi dua tabel tidak dapat digunakan semua negara.Jika beberapa situs dan APP dari negara yang sama, masing-masing negara terdaftar hanya sekali. UNION hanya memilih nilai yang berbeda. Gunakan UNION ALL untuk memilih nilai ganda!


SQL UNION ALL contoh

Pernyataan SQL berikut menggunakan UNION ALL untuk memilih semua negara dari "Website" dan "aplikasi" tabel (ada nilai-nilai duplikat):

contoh

negara SELECT FROM Website
UNION ALL
negara SELECT FROM aplikasi
ORDER BY negara;

Eksekusi SQL atas hasil output adalah sebagai berikut:



SQL UNION ALL dengan WHERE

Pernyataan SQL berikut menggunakan UNION ALL untuk memilih semua Cina (CN) Data dari "Website" dan "aplikasi" tabel (ada nilai-nilai duplikat):

contoh

SELECT country, name FROM Websites
WHERE country='CN'
UNION ALL
SELECT country, app_name FROM apps
WHERE country='CN'
ORDER BY country;

Eksekusi SQL atas hasil output adalah sebagai berikut: