Rumah >pangkalan data >tutorial mysql >Bagaimanakah SQL GROUP BY Clause berfungsi dengan Berbilang Lajur?

Bagaimanakah SQL GROUP BY Clause berfungsi dengan Berbilang Lajur?

DDD
DDDasal
2025-01-22 05:16:08654semak imbas

How Does SQL's GROUP BY Clause Work with Multiple Columns?

SQL GROUP BY dengan Berbilang Lajur: Penjelasan Terperinci

Klausa SQL GROUP BY dengan cekap mengumpulkan baris yang berkongsi nilai sepunya, membolehkan pengiraan fungsi agregat pada kumpulan ini. Walaupun pengumpulan lajur tunggal adalah mudah, pengumpulan berbilang lajur menambah lapisan kerumitan dan kuasa.

Pemahaman GROUP BY x, y

Sintaks GROUP BY x, y mengumpulkan baris di mana kedua-dua lajur x dan y mempunyai nilai yang sama. Fungsi agregat dalam pertanyaan anda kemudiannya dikira untuk setiap gabungan nilai x dan y yang berbeza.

Contoh Ilustrasi

Mari kita periksa jadual Subject_Selection, menjejaki kehadiran pelajar merentas mata pelajaran dan semester:

Subject Semester Attendee
ITB001 1 John
ITB001 1 Bob
ITB001 1 Mickey
ITB001 2 Jenny
ITB001 2 James
MKB114 1 John
MKB114 1 Erica

Pengumpulan mengikut Subjek Sahaja

Pertanyaan:

<code class="language-sql">SELECT Subject, COUNT(*)
FROM Subject_Selection
GROUP BY Subject;</code>

Menghasilkan:

Subject Count
ITB001 5
MKB114 2

Ini meringkaskan jumlah kehadiran setiap mata pelajaran.

Pengumpulan mengikut Subjek dan Semester

Sekarang, pertimbangkan pertanyaan ini:

<code class="language-sql">SELECT Subject, Semester, COUNT(*)
FROM Subject_Selection
GROUP BY Subject, Semester;</code>

Ini menghasilkan:

Subject Semester Count
ITB001 1 3
ITB001 2 2
MKB114 1 2

Ini memberikan paparan yang lebih terperinci, menunjukkan kiraan kehadiran bagi setiap subjek dan gabungan semester. Perhatikan bagaimana keputusan kini dikumpulkan mengikut gandingan unik Subjek dan Semester. Ini menunjukkan kuasa menggunakan berbilang lajur dalam klausa GROUP BY untuk mencapai pengagregatan data yang lebih halus.

Atas ialah kandungan terperinci Bagaimanakah SQL GROUP BY Clause berfungsi dengan Berbilang Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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