top of page
bg-grid 1.png

Belajar SQL HAVING Clause, Fungsi, dan Contohnya

Yuk, pelajari lebih lanjut tentang SQL HAVING Clause, fungsi, sekaligus contohnya di artikel berikut!

Data Analytics

Bobby Christian

Mau Belajar

Data Analytics

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

data analyst yang pernah menggunakan bahasa pemrograman filter kondisi. 

filtering data dengan SQL, kita menggunakan WHEREcondition, yang berfungsi untuk memberikan kondisi terhadap data yang ingin kita tampilkan, menggunakan klausa SELECT. Lantas, apa perbedaannya dengan klausa HAVING?

WHERE untuk menentukan kondisi. Apa yang membedakan antara klausa HAVING?

WHERE biasa digunakan untuk menerapkan kondisi di mana kondisi tersebut berdampak ke dalam tiap baris dan kolom data secara individu. Untuk Klausa WHERE, namun Dalam artian teknis, kondisi WHERE untuk mencari nilai yang tidak secara langsung muncul pada tabel (seperti harus melakukan perhitungan dan fungsi lainnya terlebih dahulu), maka keseluruhan klausa tersebut akan gagal dieksekusi. Apabila kita memerlukan proses agregasi terlebih dahulu dimana kita hanya akan menampilkan yang nilainya sesuai dengan hasil proses yang dilakukan, maka kita akan menggunakan klausa HAVING adalah sudah pasti data tersebut akan dikelompokan terlebih dahulu menggunakan klausa GROUP BY.

Sebagai catatan penting, kita tidak bisa menggunakan fungsi GROUP BY. Perhatikan contoh berikut ini: 

public data dari iowa_liquor_sales. Dapat kita lihat bahwa ketika kita menuliskan fungsi kondisi sales harian yang nilainya lebih dari 50, berakhir dengan sebuah Pada kalimat WHERE. Kita hanya bisa menggunakan klausa
queryKita hanya menampilkan hasil penjumlahan harian dari sale_dollars yang nilainya (sebelum dijumlahkan) lebih dari 50. 
sale_dollars kurang dari 50, maka nilai tersebut tidak akan dijumlahkan dalam perhitungan, dan membuat kita kehilangan sebagian data. 
HAVING. Klausa WHERE, namun fungsi ini memang dipergunakan untuk menerapkan kondisi pada fungsi agregat. Bentuk penulisan dari
query berikut ini. 
query di atas memiliki arti: Perintah query ini, SQL akan melakukan penjumlahan dulu dan perhitungan dengan fungsi agregat, lalu kita akan menampilkan hanya data yang nilai penjumlahannya lebih besar dari 50. 
HAVING ini memang digunakan untuk menerapkan kondisi pada fungsi agregat, apabila kita memberikan sebuah kondisi yang tidak meliputi fungsi agregat di dalamnya, maka SQL akan mengembalikan query-nya berikut ini: 
error tersebut, dituliskan bahwa klausa sale_dollars, di mana kolom tersebut tidak dikelompokkan ({{COMPONENT_IDENTIFIER}}
query di atas, kita dapat mengetahui bahwa kita hanya bisa memberikan kondisi untuk fungsi agregat dengan menggunakan WHERE

Apabila kita memiliki tugas untuk membuat WHERE dan query tersebut pada umumnya adalah sebagai berikut ini: 

query Query yang berwarna merah merupakan opsional, dan tidak wajib disertakan dalam penulisan Namun apabila kita ingin menggunakan klausa query dengan format seperti di atas.
iowa_liquor_sales. Kita akan menampilkan data penjualan harian di mana data yang kita butuhkan adalah data berupa tanggal penjualan, total nilai penjualan pada kota bernama Kita hanya akan menampilkan total query tersebut pada
query tersebut kita jalankan, maka kita akan mendapatkan hasil berikut:

bottom of page