Memahami Peranan GROUP BY dengan Fungsi Agregat
Dalam sistem pengurusan pangkalan data, fungsi agregat seperti SUM, COUNT dan AVERAGE digunakan untuk melakukan pengiraan pada set baris, mengembalikan nilai tunggal yang meringkaskan data. Walau bagaimanapun, apabila berurusan dengan berbilang baris, adalah perlu untuk menentukan baris mana untuk melakukan pengiraan. Di sinilah klausa GROUP BY memainkan peranan.
Pertimbangkan contoh yang disebutkan: mencari jumlah gaji pekerja. Kod di bawah akan mengembalikan jadual yang sama seperti input:
SELECT EmployeeID, SUM(MonthlySalary) FROM Employee
Ini kerana fungsi SUM() digunakan pada setiap baris secara individu tanpa mengambil kira pengelompokan. Untuk mendapatkan hasil yang diingini, klausa GROUP BY diperlukan:
SELECT EmployeeID, SUM(MonthlySalary) FROM Employee GROUP BY EmployeeID
Klausa GROUP BY membahagikan data berdasarkan lajur yang ditentukan, dalam kes ini, EmployeeID. Ia kemudian menggunakan fungsi SUM() pada setiap partition, menghasilkan satu baris setiap ID pekerja dengan jumlah gaji mereka.
Tanpa klausa GROUP BY, fungsi SUM() hanya akan menjumlahkan semua gaji dalam jadual, menghasilkan output yang sama dengan input. Klausa GROUP BY memastikan bahawa pengagregatan dilakukan untuk setiap ID pekerja, menyediakan kumpulan yang diperlukan untuk mendapatkan hasil yang diingini.
Pada dasarnya, klausa GROUP BY bertindak seperti pernyataan "untuk setiap", menggunakan agregat berfungsi untuk memisahkan partition data, membolehkan ringkasan bermakna dan analisis set data kompleks.
Atas ialah kandungan terperinci Bagaimanakah Klausa GROUP BY Meningkatkan Hasil Fungsi Agregat dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!