Anda di halaman 1dari 26

Group By And

Having Clause
Group By
• Digunakan untuk membagi rows
dalam table menjadi kelompok
lebih kecil
• Dapat menggunakan grup
functions untuk merangkum
informasi masing-masing grup
Group By-AVG
• Pada SELECT statement
ditunjukkan rows di kelompokkan
kolom department_id
• Function AVG di aplikasikan
untuk masing-masing grup (atau
row)
Group By - MAX
Group By - MAX
Kolom dalam Grup Function
• Kolom yang tidak menjadi bagian dalam group function harus di tampilkan dalam GROUP BY
Clause

• Group BY job_id, last_name


COUNT
• COUNT (namakolom) hanya
menghitung row yang ada nilainya
COUNT (*)
• COUNT(*) menghitung semua
row dalam satu table, tanpa harus
kolom yang berisi null
GROUP BY –WHERE Clause
• Penggunaan WHERE clause untuk mengecualikan satu atau row sebelum
rw lainnya di kelompokkan
Panduan Penting GROUP BY Clause
• Jika menggunakan sebuag grup function (AVG, SUM, COUNT, MAX,
MIN, STDDEV, VARIANCE) dalam SELECT clause dengan kolom
lainnya, masing-masing kolom harus di cantumkan pada GROUP BY
clause
• Tidak dapat menggunakan colum alias
• WHERE clause untuk mengecualikan row di tampilkan sebelum di bagi
menjadi grup
HAVING CLAUSE
Having Clause
• WHERE clause di gunakan untuk membatasi row
• HAVING clause di gunakan untuk membatasi grup di hasilkan dari
GROUP BY clause
Urutan Penulisan
ROLLUP AND CUBE
OPERATION
ROLLUP
• Membuat subtotal yang menghitung dari level paling kecil ke total
keseluruhan, menggunakan daftar kelompok/group yang di tampilkan
dalam GROUP BY clause
Langkah-Langkah ROLLUP
• Menghitung nilai yang di tampilkan dalam GROUP BY clause
• Membuat subtotal dari GROUP BY clause sebelumnya ke level yang lebih
tinggi, bergerak dari kanan ke kiri melalui daftar grouping
• Menghasilkan total keseluruhan
Menghitung value yang di
tampilkan GROUP BY clause

Membuat subtotal dari GROUP BY clause sebelumnya Menghasilkan total keseluruhan


ke level yang lebih tinggi, bergerak dari kanan ke kiri
melalui daftar grouping
Tanpa ROLLUP
CUBE
CUBE
• Dapat digunakan untuk semua aggregate function (AVG, SUM, MIN, MAX dan
COUNT)
• Kolom yang di tampilkan dalam GROUP BY clause di referensi silang untuk
membuat kelompok yang lebih besar (superset/superhimpunan)
• Aggregate function yang di tampilkan dalam SELECT clause di aplikasi kan pada
grup untuk membuat nilai rangkuman untuk baris tambahan yang menampilkan
hasil agregasi
• Jika ada n kolom pada GROUP BY clause, akan muncul 2n kombinasi super-
agregasi
GROUPING SET
Grouping Function
• Menggunakan kolom tunggal dari query sebagai argument
• Menampilkan hasil 1 untuk hasil hitungan
• Menampillkan hasil 0 untuk bukan hasil hitungan
• Sintaks:
• GROUPING (namakolom)

Anda mungkin juga menyukai