Rumah >pangkalan data >tutorial mysql >Bagaimanakah kita boleh menggunakan pengendali MySQL UNION pada set data?
Pada asasnya, pengendali MySQL UNION digunakan untuk menggabungkan set hasil 2 atau lebih pernyataan SELECT. Ia mengalih keluar baris pendua antara pernyataan SELECT. Setiap pernyataan SELECT dalam operator UNION mesti mempunyai bilangan medan yang sama dalam set hasil jenis data yang serupa. Sintaksnya adalah seperti berikut -
SELECT expression1, expression2, … expression_n FROM table [WHERE conditions] UNION [DISTINCT] SELECT expression1, expression2, … expression_n FROM table [WHERE conditions]
Di sini, ungkapan1, ungkapan2,...ungkapan_n ialah lajur yang ingin kami dapatkan semula.
Jadual ialah jadual dari mana kami ingin mendapatkan semula rekod.
WHERE syarat, Ia adalah pilihan dan mesti dipenuhi untuk memilih rekod.
DISTINCT, Mengalih keluar pendua daripada set hasil juga adalah pilihan, tetapi termasuk pengubah suai DISTINCT tidak mempunyai kesan pada set hasil pengendali UNION kerana pengendali UNION sudah mengalih keluar pendua secara lalai.
Dalam contoh ini, kami mempunyai dua jadual, Student_detail dan Student_info, dengan data berikut -
mysql> Select * from Student_detail; +-----------+---------+------------+------------+ | studentid | Name | Address | Subject | +-----------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 130 | Ram | Jhansi | Computers | | 132 | Shyam | Chandigarh | Economics | | 133 | Mohan | Delhi | Computers | | 150 | Rajesh | Jaipur | Yoga | | 160 | Pradeep | Kochi | Hindi | +-----------+---------+------------+------------+ 7 rows in set (0.00 sec) mysql> Select * from Student_info; +-----------+-----------+------------+-------------+ | studentid | Name | Address | Subject | +-----------+-----------+------------+-------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 130 | Ram | Jhansi | Computers | | 132 | Shyam | Chandigarh | Economics | | 133 | Mohan | Delhi | Computers | | 165 | Abhimanyu | Calcutta | Electronics | +-----------+-----------+------------+-------------+ 6 rows in set (0.00 sec)
Sekarang, pertanyaan berikut menggunakan operator UNION akan mengembalikan semua nilai "studentid" dalam kedua-dua jadual.
mysql> Select Studentid FROM student_detail UNION SELECT Studentid FROM student_info; +-----------+ | Studentid | +-----------+ | 101 | | 105 | | 130 | | 132 | | 133 | | 150 | | 160 | | 165 | +-----------+ 8 rows in set (0.00 sec)
Atas ialah kandungan terperinci Bagaimanakah kita boleh menggunakan pengendali MySQL UNION pada set data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!