Manual Tutorial...login
Manual Tutorial Permulaan SQL
pengarang:php.cn  masa kemas kini:2022-04-12 14:15:40

SQL UNION



Pengendali SQL UNION menggabungkan hasil dua atau lebih pernyataan SELECT.


SQL UNION Operator

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

Perhatikan bahawa setiap pernyataan SELECT di dalam UNION mesti mempunyai bilangan lajur yang sama. Lajur juga mesti mempunyai jenis data yang serupa. Juga, susunan lajur dalam setiap pernyataan SELECT mestilah sama.

SQL UNION sintaks

PILIH nama_lajur DARI jadual1
UNION
PILIH <🎜(>nama_lajur s) DARI jadual2;

Nota: Secara lalai, pengendali UNION memilih nilai yang berbeza. Jika nilai pendua dibenarkan, gunakan UNION ALL.

SQL UNION ALL sintaks

SELECT
column_name(s) FROM table1UNION ALL
PILIH
column_name(s) FROM table2;

Nota: Nama lajur dalam set hasil UNION sentiasa sama dengan pernyataan SELECT pertama dalam nama lajur UNION.


Pangkalan Data Demo

Dalam tutorial ini kami akan menggunakan pangkalan data sampel php.

Berikut ialah data yang dipilih daripada jadual "Laman Web":

+----+--------------+-- - ------------------------+------+---------+
| id | |. url                                                                        --------+----- | ://www.google.cm/ | 1 |. Amerika Syarikat |. 2 | |
|. 4 |. http://weibo.com/ | |. stackoverflow |. - -------------------------+---------+

Berikut ialah data APP "apl":

mysql> PILIH * DARI apl;
+----+----------- -+ ----------------------+--------+
| id_apl | >+----+-----------+------------+---- -----+
|. 1 |. http://im.qq.com/ |
| >|. 3 |. APP Taobao |. https://www.taobao.com/ | ---------------------------+
3 baris dalam set (0.00 saat)


Contoh SQL UNION

Pernyataan SQL berikut memilih semua

negara

berbeza (hanya nilai berbeza) daripada jadual "Laman Web" dan "apl":

Contoh

PILIH negara DARI Tapak Web

UNION

PILIH negara DARI apl
PESANAN MENGIKUT negara;

Hasil keluaran melaksanakan SQL di atas adalah seperti berikut:

Nota:
UNION tidak boleh digunakan untuk menyenaraikan semua negara dalam dua jadual. Jika sesetengah tapak web dan apl dari negara yang sama, setiap negara hanya akan disenaraikan sekali. UNION hanya akan memilih nilai yang berbeza. Sila gunakan UNION ALL untuk memilih nilai pendua!

SQL UNION ALL Contoh


Pernyataan SQL berikut menggunakan UNION ALL untuk memilih

semua

negara daripada jadual "Laman Web" dan "aplikasi" (terdapat juga nilai pendua):

Instance

PILIH negara DARI Tapak Web

UNION ALL

PILIH negara DARI apl
PESANAN MENGIKUT negara;

Hasil keluaran melaksanakan SQL di atas adalah seperti berikut:



SQL UNION ALL WITH WHERE

Pernyataan SQL berikut menggunakan UNION ALL untuk memilih semua data China ( CN) (terdapat juga nilai pendua):

Instance

                        PILIH negara, nama DARI Tapak Web
WHERE country='CN'
UNION ALL
PILIH negara, nama_apl DARI apl
WHERE country='CN'
PESANAN OLEH negara;

Hasil keluaran melaksanakan SQL di atas adalah seperti berikut: