Tutorial MySQL ini menjelaskan Cara Menggunakan Clause MySQL GROUP BY dengan sintaks dan contoh.

Deskripsi
Clause MySQL GROUP BY dapat digunakan dalam sebuah statement MySQL SELECT untuk mengumpulkan data di beberapa record dan mengelompokkan hasilnya dengan satu atau lebih kolom.
Syntax

Syntax untuk Clause MySQL GROUP BY adalah:

 

Penjelasan Parameter
expression1, expression2, … expression_n
Ekspresi yang tidak dienkapsulasi dalam fungsi agregat dan harus disertakan dalam Klausa GROUP BY pada akhir pernyataan SQL.
aggregate_function
Ini adalah fungsi agregat MySQL seperti fungsi SUM, COUNT, MIN, MAX, atau AVG.
aggregate_expression
Ini adalah kolom atau ekspresi yang akan digunakan oleh fungsi aggregate.
tables
Tabel yang ingin Anda ambil dari arsip. Paling tidak ada satu tabel yang tercantum dalam klausa FROM.
WHERE conditions
Pilihan. Ini adalah kondisi yang harus dipenuhi agar catatan bisa dipilih.
ORDER BY expression
Pilihan. Ekspresi yang digunakan untuk mengurutkan catatan di set hasil. Jika lebih dari satu ekspresi diberikan, nilai harus dipisahkan koma.
ASC
Pilihan. ASC mengurutkan hasil yang ditetapkan dalam urutan menaik menurut ungkapan. Ini adalah perilaku default, jika tidak ada pengubah provider.
DESC
Pilihan. DESC mengurutkan hasil yang ditetapkan dalam urutan menurun menurut ungkapan.

 

Contoh – Menggunakan GROUP BY dengan Fungsi SUM

Mari kita lihat bagaimana menggunakan clause MySQL GROUP BY dengan fungsi aggregate MySQL SUM.

Dalam contoh ini, kita memiliki tabel yang disebut karyawan dengan data sebagai berikut:

 

employee_number last_name first_name salary dept_id
1001 Smith John 62000 500
1002 Anderson Jane 57500 500
1003 Everest Brad 71000 501
1004 Horvath Jack 42000 501

 

Masukkan pernyataan SQL berikut ini:

 

Akan ada 2 record yang dipilih. Inilah hasil yang harus Anda lihat:

dept_id total_salaries
500 119500
501 113000

 

Dalam contoh ini, kita telah menggunakan fungsi aggregate MySQL SUM untuk menambahkan semua gaji untuk masing-masing dept_id dan kita telah mengetahui hasil fungsi aggregate MySQL SUM sebagai total_salaries. Karena dept_id tidak dienkapsulasi dalam fungsi SUM, maka harus tercantum dalam klausa GROUP BY.