Klausa GROUP BY
SQL: Mengendalikan Berbilang Lajur
Klausa SQL GROUP BY
mengagregatkan baris dalam jadual berdasarkan lajur yang ditentukan. Mari terokai cara ia berfungsi dengan lajur tunggal dan berbilang.
Pengumpulan Lajur Tunggal (GROUP BY x
)
GROUP BY x
kumpulan baris berkongsi nilai yang sama dalam lajur 'x'. Semua baris dengan nilai 'x' yang sama dianggap sebagai satu kumpulan.
Pengumpulan Berbilang Lajur (GROUP BY x, y
)
Melanjutkan ini, GROUP BY x, y
mengumpulkan baris berdasarkan nilai yang sepadan dalam kedua-dua lajur 'x' dan 'y'. Baris mesti mempunyai nilai yang sama untuk kedua-duanya 'x' dan 'y' untuk berada dalam kumpulan yang sama.
Contoh: Pendaftaran Mata Pelajaran
Pertimbangkan Subject_Selection
jadual penjejakan pendaftaran subjek pelajar:
<code>Table: Subject_Selection +---------+----------+---------+ | Subject | Semester | Attendee | +---------+----------+---------+ | ITB001 | 1 | John | | ITB001 | 1 | Bob | | ITB001 | 1 | Mickey | | ITB001 | 2 | Jenny | | ITB001 | 2 | James | | MKB114 | 1 | John | | MKB114 | 1 | Erica | +---------+----------+---------+</code>
Pengumpulan mengikut Subjek Sahaja
Pertanyaan SELECT Subject, COUNT(*) FROM Subject_Selection GROUP BY Subject
kumpulan oleh Subject
:
<code>+---------+--------+ | Subject | Count | +---------+--------+ | ITB001 | 5 | | MKB114 | 2 | +---------+--------+</code>
Ini menunjukkan jumlah pendaftaran untuk setiap mata pelajaran.
Pengumpulan mengikut Subjek dan Semester
Pertanyaan SELECT Subject, Semester, COUNT(*) FROM Subject_Selection GROUP BY Subject, Semester
kumpulan oleh Subject
dan Semester
:
<code>+---------+----------+--------+ | Subject | Semester | Count | +---------+----------+--------+ | ITB001 | 1 | 3 | | ITB001 | 2 | 2 | | MKB114 | 1 | 2 | +---------+----------+--------+</code>
Ini menyediakan kiraan pendaftaran untuk setiap subjek setiap semester, menawarkan paparan yang lebih terperinci. Perbezaan utama ialah tahap perincian tambahan yang disediakan dengan memasukkan Semester
dalam klausa GROUP BY
.
Atas ialah kandungan terperinci Bagaimanakah Fungsi `GROUP BY` SQL berfungsi dengan Berbilang Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!