ORDER BY, GROUP BY, HAVING
Tutorial kali ini saya mau membagi bagaimana cara penggunaan ORDER BYatau pengurutan data dan juga GROUP BYatau pengelompokan data dan HAVING. Hasil query dapat di urutkan menurut kriteria yang anda kehendaki yaitu dengan menggunakan tambahan klausa ORDER BY. Pengurutan dapat dilakukan baik secara escendingmaupun descending. Pengurutan hasil query bisa didasarkan sebuah kolom ataupun beberapa kolom. Sedangkan
#ORDER BY
Bentuk sederhana dari suatu pengurutan hasil adalah didasarkan pada sebuah kolom. Berikut merupakan gambaran penggunaan order by atau pengurutan data.
Penulisan:
Select * from nama_tabel order by nama_field;
Pada contoh diatas, pengurutan data yang dilakukan secara ascending atau. Bagaimana kalau diinginkan untuk melakukan pengurutan secaara descending?? Anda cukup menambahkan data DESC di belakang atau setelah nama_field yang digunakan sebagai acuan pengurutan data, berikut contohnya.
Penulisan:
Select * from nama_tabel order by nama_field desc;
Pengurutan data atau order by ini juga dapat dilakukan menurut dari beberapa kolom atau nama_field. Caranya adalah dengan menyatakan nama-nama kolom pada klausa ORDER BY, dengan antar kolom dipisah dengan tanda koma. Berikut contoh penulisannya.
Penulisan:
Select * from nama_tabel order by nama_field, nama_field;
“coba bandingkan perintah query diatas dengan perintah query yang hanya menggunakan satu nama_field saja”. Anda juga bisa mengatur antara kolom tertentu diurutkan secara ascending dan kolom lain secara descending, berikut contoh penulisannya.
Penulisan:
Select * from nama_tabel order by nama_field asc, nama_field desc;
Atau
Select * from nama_tabel order by nama_field, nama_field desc;
Contoh diatas salah satunya diurutkan secara ascending dan satunya lagi diurutkan secara descending. Sebenarnya, tambahan ASC tidak perlu disebutkan kalau pengurutan data yang anda inginkan berupa ascending. Sebaliknya, bila anda menginkan data secara descending anda harus menyebutkan DESC setelah acuan nama_field yang anda inginkan.
#GROUP BY
Hasil dari SELECT juga dapat dikelompokan. Sebagai contoh, kemungkinan dari nilai kolom tertentu dengan perintah berikut.
Penulisan:
Select * from nama_tabel group by nama_field;
Bila anda menemukan data yang nilai nya NULL anda bisa menggunakan perintah yang seperti berikut ini.
Penulisan:
Select * from nama_tabel where nama_field is not null group by nama_field;
Catatan:
Kolom-kolom yang anda sebutkan dalam SELECT dan tidak berada dalam fungsi agregat haruslah disebutkan dalam klausa GROUP BY.
#HAVING
Penggunaan klausa HAVINGterkait dengan klausa GROUP BY. Kegunaannya adalah untuk menentukan kondisi bagi GROUP BY. Kelompok yang memenuhi HAVING saja yang akan di hasilkan.
Penulisa:
Select * from nama_tabel where nama_field not null group by nama_fieldhaving nama_field <> ‘kondisi’;
Catatan:
Sesuaikan tulisan yang bercetak miring yang ada di tabel database anda. Pada bagaian yang ada di dalam tanda petik bila di ganti dengan kata atau nama sebut saja ‘kirun’ maka yang akan di tampilkan selain nama kirun.
masih pemula sql saya gan hehe , masih belum ngerti
ReplyDelete