Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menggunakan Klausa GROUP BY SQL untuk Mengagregatkan Data ke dalam Julat?
SQL GROUP BY untuk Pengagregatan Julat Data
Menganalisis pengedaran data merentas pelbagai julat ialah aspek penting dalam analisis data. Klausa GROUP BY
SQL menawarkan mekanisme yang teguh untuk mengagregatkan data ke dalam kumpulan yang dipratentukan, memudahkan penjanaan jadual ringkasan dan laporan yang ringkas.
Mewujudkan Kumpulan Berasaskan Julat
Untuk mengkategorikan data ke dalam julat tertentu, kami memanfaatkan pernyataan CASE WHEN
untuk menetapkan nilai pada lajur baharu berdasarkan syarat yang ditetapkan. Lajur yang baru dibuat ini kemudiannya berfungsi sebagai asas untuk mengumpulkan data menggunakan klausa GROUP BY
.
Contoh Ilustrasi: Pengumpulan Julat Skor
Mari kita pertimbangkan senario di mana kita perlu menentukan kekerapan skor dalam selang waktu tertentu (cth., 0-9, 10-19, 20-29). Pertanyaan berikut membina lajur baharu yang mewakili julat skor ini:
<code class="language-sql">SELECT CASE WHEN score BETWEEN 0 AND 9 THEN '0-9' WHEN score BETWEEN 10 AND 19 THEN '10-19' ELSE '20-99' END AS score_range FROM scores;</code>
Pertanyaan ini menjana lajur score_range
, memperuntukkan setiap skor kepada julat sepadannya.
Penggabungan dengan GROUP BY
Untuk mengira kiraan markah dalam setiap julat, kami menggunakan fungsi agregat COUNT(*)
bersama dengan klausa GROUP BY
. Pertanyaan di bawah mencapai ini:
<code class="language-sql">SELECT score_range, COUNT(*) AS score_count FROM ( SELECT CASE WHEN score BETWEEN 0 AND 9 THEN '0-9' WHEN score BETWEEN 10 AND 19 THEN '10-19' ELSE '20-99' END AS score_range FROM scores ) AS ranged_scores GROUP BY score_range;</code>
Output
Jadual yang terhasil memaparkan dua lajur: score_range
dan score_count
, memberikan gambaran keseluruhan yang jelas tentang pengagihan skor merentas julat yang ditentukan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Klausa GROUP BY SQL untuk Mengagregatkan Data ke dalam Julat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!