Melaporkan Data AgregetMenggunakan Group Functions
Group Functions
Tidak
seperti singlerowfunction, group
function beroperasi pada sekelompok
barisbarisuntukmemberikan satu hasil per kelompok. Kelompokkelompokini mungkin
terdiri dari seluruh tabel
atau
tabel yang terpisah ke dalam pengelompokkan.
Tipe-TipeGroup Functions
· AVG
· COUNT
· MAX
· MIN
· STDDEV
· SUM
· VARIANCE
Fungsi
COUNT
Fungsi
COUNT memiliki tiga format :
· COUNT (*)
· COUNT (expr)
· COUNT (DISTINCT expr)
COUNT
(*) mengembalikan jumlah barisbarisdalam suatu
tabel yang memenuhi kriteria daripernyataan SELECT, termasuk barisbarisyang sama dan barisbarisyang berisi
nilainilainull di
setiap
kolom.
Group Functions dan
NilaiNilai
Null
Semua
group functions mengabaikan nilainilai
null dalam kolom.
Fungsi
NVL memaksa group functions untuk
menyertakan nilainilai
null.
Contoh:
1.
Ratarata
dihitung
berdasarkan hanya
pada barisbarisdalam suatu tabel yang
menyimpannilai yang valid di kolom COMMISION_PCT. Rataratadihitung sebagai total komisi yangdibayarkan ke semua
pegawai dibagi dengan jumlah pegawai yang menerima komisi(empat).
2.
Ratarata
dihitung
berdasarkan semua
barisbarisdalam suatu tabel, tidak peduli
apakahnilainilaidi kolom COMMISION_PCT null atau bukan.
Rataratadihitung sebagai totalkomisi yang dibayarkan ke semua pegawai dibagi
dengan jumlah total pegawai dalamperusahaan (20).
Klausa
GROUP BY
Anda
dapat menggunakan klausa GROUP BY untuk membagi barisbarisdalam suatu tabelmenjadi
kelompokkelompok.Kemudian Anda dapat menggunakan group functions untukmengembalikan
informasi ringkas untuk setiap kelompok.
Dalam
sintak :
Group_by_expression kolomkolomtertentu
yang nilainilainyamenentukan dasar untukpengelompokan barisbaris
Penggunaan
Klausa HAVING
Contoh
pada slide menampilkan nomornomordepartemen dan
penghasilan maksimum untukdepartemendepartemendengan penghasilan suatu maksimum
lebih dari $10.000
Anda
dapat menggunakan klausa GROUP BY tanpa menggunakan group
function pada daftar
SELECT.
Jika
Anda membatasi barisbarisberdasarkan hasil dari suatu group function,
Anda harusmenggunakan klausa GROUP BY sebagaimana klausa HAVING.
Tidak ada komentar:
Posting Komentar