Rumah >pangkalan data >tutorial mysql >Bagaimanakah Klausa SQL `GROUP BY` Mengagregat Data dan Bilakah Ia Mengembalikan Baris Tunggal?
Klausa GROUP BY
SQL: Pengagregatan Data dan Output Baris
Penggabungan data ialah asas analisis pangkalan data. Klausa GROUP BY
SQL menyediakan mekanisme untuk mengumpulkan baris berdasarkan lajur yang ditentukan dan menggunakan fungsi agregat pada kumpulan tersebut.
Mari kita periksa pertanyaan menggunakan jadual sampel, Tab1
, dengan lajur a1
, a2
, a3
, dsb. (tiada satu pun yang mengenal pasti baris secara unik). Pertimbangkan pertanyaan ini:
<code class="language-sql">SELECT a1, a2, SUM(a3) FROM Tab1 GROUP BY a1, a2;</code>
Mentafsir Keputusan Pertanyaan
Klausa GROUP BY
membahagikan baris Tab1
kepada kumpulan berdasarkan gabungan unik a1
dan a2
. Pertanyaan menghasilkan satu baris untuk setiap pasangan (a1, a2) yang berbeza.
Untuk setiap kumpulan, fungsi SUM(a3)
mengira jumlah nilai a3
. Oleh itu, output menunjukkan jumlah a3
agregat untuk setiap gabungan unik (a1, a2).
Adakah Ia Sentiasa Mengembalikan Satu Baris?
Output pertanyaan tidak selalunya satu baris. Ia mengembalikan berbilang baris—satu setiap kumpulan unik (a1, a2). Bilangan baris bergantung terus pada bilangan kumpulan berbeza dalam Tab1
. Hanya jika Tab1
mempunyai satu baris, atau jika semua baris berkongsi nilai a1
dan a2
yang sama, pertanyaan akan menghasilkan satu baris.
Atas ialah kandungan terperinci Bagaimanakah Klausa SQL `GROUP BY` Mengagregat Data dan Bilakah Ia Mengembalikan Baris Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!