Rumah > pengaturcaraan harian > pengetahuan mysql > Penggunaan kesatuan dan kesatuan semua dalam mysql

Penggunaan kesatuan dan kesatuan semua dalam mysql

下次还敢
Lepaskan: 2024-04-27 04:09:15
asal
1227 orang telah melayarinya

UNION dan UNION ALL dalam MySQL digunakan untuk menggabungkan set hasil. Perbezaannya terletak pada cara baris pendua dikendalikan. UNION mengalih keluar baris pendua, manakala UNION ALL mengekalkan semua baris. Sintaks UNION: SELECT lajur 1, lajur 2, ...DARI jadual 1 UNION SELECT lajur 1, lajur 2, ...DARI jadual 2 UNION ALL sintaks: PILIH lajur 1, lajur 2, ...DARI jadual 1 UNION SEMUA PILIH lajur 1, lajur 2, ...DARI jadual 2;

Penggunaan kesatuan dan kesatuan semua dalam mysql

Penggunaan UNION dan UNION ALL dalam MySQL

Dalam MySQL, UNION dan UNION ALL digunakan untuk menggabungkan dua atau lebih Operator SELECT untuk pernyataan set hasil. Perbezaan utama mereka ialah cara baris pendua dikendalikan.

UNION

Pengendali UNION mengalih keluar baris pendua secara automatik apabila menggabungkan set hasil. Ia hanya mengembalikan baris unik daripada setiap set hasil.

UNION ALL

UNION ALL operator akan menyimpan semua baris termasuk baris pendua apabila menggabungkan set hasil. Ia hanya menggabungkan semua baris dalam dua atau lebih set hasil.

Penggunaan

Sintaks UNION dan UNION ALL adalah seperti berikut:

<code class="sql">SELECT 列1, 列2, ...
FROM 表1
UNION
SELECT 列1, 列2, ...
FROM 表2;

SELECT 列1, 列2, ...
FROM 表1
UNION ALL
SELECT 列1, 列2, ...
FROM 表2;</code>
Salin selepas log masuk

Contoh

Andaikan kita mempunyai dua jadual Pelajar> dan CREATE TABLE Students ( id INT NOT NULL PRIMARY KEY, name VARCHAR(255) NOT NULL ); CREATE TABLE Teachers ( id INT NOT NULL PRIMARY KEY, name VARCHAR(255) NOT NULL );StudentsTeachers:

<code class="sql">-- 使用 UNION 移除重复行
SELECT name
FROM Students
UNION
SELECT name
FROM Teachers;

-- 使用 UNION ALL 保留所有行,包括重复行
SELECT name
FROM Students
UNION ALL
SELECT name
FROM Teachers;</code>
Salin selepas log masuk

现在,我们可以使用 UNION 和 UNION ALL 来组合这两个表的 name Kini, kita boleh menggunakan UNION dan UNION ALL untuk menggabungkan lajur nama kedua-dua jadual ini:

rrreee

Nota

  1. Set keputusan UNION dan UNION ALL mesti mempunyai nombor yang sama lajur dan Jenis data lajur yang sepadan adalah serasi.
  2. Apabila menggunakan UNION ALL, penjagaan harus diambil untuk mengelakkan data pendua mencemarkan hasilnya.
  3. UNION mempunyai prestasi yang lebih baik kerana ia tidak memerlukan penyahduplikasian sebelum bergabung.

Atas ialah kandungan terperinci Penggunaan kesatuan dan kesatuan semua dalam mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan