Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memesan Keputusan daripada Berbilang Pertanyaan SELECT Digabungkan dengan UNION?

Bagaimana untuk Memesan Keputusan daripada Berbilang Pertanyaan SELECT Digabungkan dengan UNION?

Barbara Streisand
Lepaskan: 2025-01-11 07:12:41
asal
340 orang telah melayarinya

How to Order Results from Multiple SELECT Queries Combined with UNION?

Mengisih Keputusan daripada Gabungan SELECT dan Pertanyaan UNION

Menggabungkan berbilang pertanyaan SELECT menggunakan UNION memberikan cabaran yang sama: cara mengisih set data yang terhasil. Mari kita terokai isu ini dan penyelesaiannya.

Cabarannya

Apabila mendapatkan semula data daripada pelbagai jadual atau menggunakan berbilang SELECT penyata yang digabungkan dengan UNION, mencapai susunan isihan lajur tertentu boleh menjadi rumit.

Penjelasan Terperinci

Pertimbangkan senario ini:

<code class="language-sql">SELECT id, name, age
FROM Student
WHERE age < 20
UNION
SELECT id, name, age
FROM Student
WHERE age >= 20;</code>
Salin selepas log masuk

Pertanyaan ini memilih data daripada dua kumpulan berbeza dalam jadual Student. Walau bagaimanapun, klausa ORDER BY name mudah yang diletakkan dalam salah satu pernyataan SELECT tidak akan mengisih hasil gabungan dengan betul.

Penyelesaian

Pendekatan yang betul ialah menggunakan klausa ORDER BY selepas pernyataan UNION. Pertanyaan berikut menunjukkan kaedah yang betul:

<code class="language-sql">SELECT id, name, age
FROM Student
WHERE age < 20
UNION
SELECT id, name, age
FROM Student
WHERE age >= 20
ORDER BY name;</code>
Salin selepas log masuk

Ini memastikan klausa ORDER BY beroperasi pada set data lengkap yang dihasilkan oleh operasi UNION, menjamin output diisih yang diingini.

Atas ialah kandungan terperinci Bagaimana untuk Memesan Keputusan daripada Berbilang Pertanyaan SELECT Digabungkan dengan UNION?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan