Dalam mysql, penggunaan union all ialah "select statement 1 union all select statement 2..." Union all boleh menggabungkan hasil daripada berbilang penyata pilihan ke dalam satu set hasil dan menggabungkan semua Rekod pulangan, ini kecekapan akan lebih tinggi daripada kesatuan.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi mysql8.0.22, komputer Dell G3.
1.mysql union syntax
mysql union digunakan untuk menggabungkan hasil daripada berbilang penyata pilihan ke dalam set hasil . Sintaksnya ialah:
select column,......from table1 union [all] select column,...... from table2 ...
Dalam berbilang penyata pilihan, lajur yang sepadan harus mempunyai atribut medan yang sama dan nama medan yang digunakan dalam pernyataan pilihan pertama juga digunakan untuk nama medan hasil.
1.1 Perbezaan antara kesatuan dan kesatuan semua
Apabila menggunakan kesatuan , mysql akan memadamkan rekod pendua dalam set hasil, tetapi apabila menggunakan kesatuan semua , mysql akan mengembalikan semua rekod dengan kecekapan tinggi Lebih tinggi daripada kesatuan.
2. mysql union Contoh penggunaan
Union biasanya digunakan untuk menanyakan dua atau lebih jadual yang serupa dengan data, seperti jadual klasifikasi data yang berbeza, atau jadual sejarah data, dsb. Dua jadual diuji;
2.1 Gunakan pertanyaan UNION
untuk menanyakan nombor ID artikel dan tajuk dalam dua jadual, dan alih keluar rekod pendua:
SELECT aid,title FROM article UNION SELECT bid,title FROM blog
Keputusan pertanyaan yang dikembalikan adalah seperti berikut:
2.2. Penerangan hasil pertanyaan UNION
Rekod pendua merujuk kepada rekod di mana setiap medan dalam pertanyaan diulang sepenuhnya Seperti dalam contoh di atas, jika tajuk adalah sama tetapi nombor ID berbeza, ia akan dikira sebagai rekod yang berbeza.
Nama medan yang digunakan dalam pernyataan SELECT pertama juga digunakan untuk nama medan hasil, seperti bantuan dalam contoh di atas.
Nama medan setiap pernyataan SELECT boleh berbeza, tetapi atribut medan mestilah konsisten.
3. Gunakan pertanyaan UNION ALL
untuk menanyakan nombor ID artikel dan tajuk dalam dua jadual, dan mengembalikan semua rekod:
SELECT aid,title FROM article UNION ALL SELECT bid,title FROM blog
Hasil pertanyaan yang dikembalikan ialah seperti berikut:
Jelas sekali, apabila menggunakan UNION ALL, anda hanya menggabungkan pelbagai pertanyaan bersama-sama tanpa menilai sama ada data diulang. Oleh itu, apabila anda pasti bahawa tidak akan ada data pendua dalam hasil pertanyaan atau tidak perlu mengalih keluar data pendua, anda harus menggunakan UNION ALL untuk meningkatkan kecekapan pertanyaan.
Pembelajaran yang disyorkan: tutorial video mysql
Atas ialah kandungan terperinci Apakah kegunaan kesatuan semua dalam mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!