Minggu, 19 Oktober 2014

Agregasi MySQL dan View



Assalamu’alaikum Wr.Wb.

Selamat siang sobat bloggers, akhirnya jumpa lagi nih. Baiklah, enaknya langsung saja, kali ini saya akan membahas tentang fungsi agregasi, group by, having, case, dan view pada MySQL.

Apa itu fungsi Agregasi ?

Agregasi merupakan suatu fungsi yang disediakan oleh MySQL untuk menghasilkan sebuah nilai berdasarkan sejumlah data. Agregasi dapat digabungkan dengan operator WHERE agar menghasilkan fungsi yang lebih kompleks lagi. Adapun beberapa fungsi agregasi pada MySQL adalah:
Fungsi Agregasi
Keterangan
COUNT
Menghitung jumlah data
SUM
Menjumlahkan suatu nilai
MIN
Mencari nilai terkecil
MAX
Mencari nilai terbesar
AVG
Menghitung nilai rata-rata

Group by
Fungsi ini digunakan untuk mengelompokkan data, dengan syarat data yang akan dikelompokkan mempunyai data yang sejenis atau sama.

Having
Pemakaian HAVING terkait dengan GROUP BY, kegunaanya adalah untuk menentukan kondisi bagi GROUP BY, dimana kelompok yang memenuhi  kondisi saja yang akan di hasilkan.


Case
Perintah case sering digunakan untuk menampilkan nilai tertentu dari beberapa barisan data dengan syarat-syarat atau kondisi yang kita berikan. Penggunaan perintah ini akan membentuk kolom baru dengan hasil data operasi yang dimasukkan kedalamnya.

View
Views merupakan tampilan tabel dengan data yang ingin ditampilkan bisa kita pilih. Kelebihan yang dimiliki oleh view yaitu dapat menyimpan perintah query, dan dapat mewakili sebuah subset dari tabel asli dan memilih kolom atau row tertentu dari tabel biasa.

Oke, langsung saja untuk lebih jelasnya mari menuju ke TKP. Saya akan mencoba menjelaskan penerapan perintah diatas. Disini saya juga menggunakan tabel dari yang telah dibuat sebelumnya.
Catatan: Saya memakai dua tabel yang berelasi antara satu dengan yang lain.

Tabelnya seperti dibawah ini. Kolom id_fak pada tabel fakultas berelasi dengan kolom id_fak
yang ada pada table mahasiswa.




1. Mencari MIN, MAX, dan AVG
Untuk mencari nilai minimal (MIN), maksimal (MAX), dan rata-rata (AVG) pada data mahasiswa diatas, query yang digunakan seperti dibawah ini.




2. Mencari nilai AVG dengan WHERE
Dibawah ini merupakan query untuk menghitung AVG dari mahasiswa yang mempunyai nim lebih dari 15. Maka dari itu digunakan WHERE untuk menyatakan syaratnya.




3. Menampilkan jumlah mahasiswa yang ada berdasarkan fakultas
Selain menggunakan count dan group by, disini juga ditambah WHERE untuk menampilkan data dari tabel yang berelasi. Karena jika tidak ditambah WHERE, akan muncul data yang sama.



4. Menampilkan jumlah mahasiswa dengan operasi HAVING
Contoh kasusnya: Jika ingin menampilkan jumlah mahasiswa berdasarkan fakultas yang mempunyai jumlah mahasiswanya lebih dari sama dengan 3. Query yang digunakan sama seperti nomer 3, hanya perlu ditambahkan operator HAVING.





5. Menggunakan perintah CASE
Contoh penggunaannya adalah disaat menampilkan data, jika jenis kelaminnya “L”, maka akan ditampilkan “Laki-laki”, kemudian jika kelaminnya “P”, maka yang ditampilkan “Perempuan”. Querynya seperti pada gambar dibawah ini.





6. Membuat VIEW
Contohnya membuat view pada tabel mahasiswa dan tabel fakultas dengan data yang ditampilkan yaitu nim, nama, dan nama fakultas. Querynya seperti berikut ini. Lalu untuk menampilkan tabel view berhasil dibuat atau tidak, dengan mengetik perintah SELECT* FROM nama_tabel_view;.




Kesimpulan

Seperti pada dua minggu yang lalu, kali ini saya tidak menemukan perbedaan antara MySQL dan Postgre dari segi struktur querynya dan operator yang ada didalamnya. Semua operator pada Postgre bisa juga digunakan pada MySQL tanpa terkendala suatu halangan. Begitu pun dengan struktur querynya, keduanya sama persis tanpa ada perbedaan sedikit pun. Jadi penerapan perintah pada Postgre ke MySQL bisa dibilang cukup mudah.

Jadi itulah yang bisa saya perbandingkan untuk kesempatan kali ini. Tunggu kelanjutannya pada minggu-minggu selanjutnya. Semoga bermanfaat dan bisa menambah wawasan sobat bloggers. Thanks and see ya..:)

Wassalamu’alaikum Wr.Wb.



Referensi:













Tidak ada komentar:

Posting Komentar