Fungsi agregat biasanya digunakan untuk menghitung jumlah data, data terkecil (minimum), data terbesar (maximum), data rata-rata (average), dan lain sebagainya. Fungsi agregat sering digunakan bersama-sama dengan klausa Group By dan Having untuk mengelompokkan data.
Di bawah ini adalah tabel daftar fungsi agregat yang terdapat dalam MySQL:
Nama Fungsi | Deskripsi |
---|---|
AVG | Untuk menghitung nilai rata-rata (average) |
COUNT | Untuk menghitung jumlah data |
MAX | Untuk menghitung nilai terbesar (maximum) |
MIN | Untuk menghitung nilai terkecil (minimum) |
SUM | Untuk menghitung total nilai (minimum) |
Fungsi agregat diatas, akan kita bahas lebih detail pada tutorial kali ini.
Fungsi AVG
Fungsi AVG() digunakan untuk menghitung nilai rata-rata dari sebuah data.
Sintak Dasar
Di bawah ini adalah sintak dasar dari fungsi AVG().
SELECT AVG(column_name) FROM tables WHERE conditions;
Contoh
Asumsikan Anda telah memiliki sebuah tabel "tbl_pegawai" dengan data-data sebagai berikut:
mysql> SELECT * FROM tbl_pegawai; +------------+------------------+---------------+----------+------------+------------+ | id_pegawai | nama_pegawai | jenis_kelamin | gaji | alamat | departemen | +------------+------------------+---------------+----------+------------+------------+ | 1 | Nursalim | L | 1000000 | Brebes | IT | | 2 | Naura Krasiva | P | 1500000 | Tegal | FIN | | 3 | Nurul Anawariyah | P | 2000000 | Pemalang | HRD | | 4 | Achmad Fathoni | L | 3000000 | Batang | IT | | 5 | Nurul Hikmah | P | 9000000 | Pekalongan | DIR | | 6 | Iskiyati | P | 3000000 | Semarang | ACC | | 7 | Dodi Al Farizi | L | 3000000 | Kendal | FIN | | 8 | Susanto | L | 4500000 | Cilacap | MKT | | 9 | Susanti | P | 43500000 | Banyumas | MKT | | 10 | Doni Nugroho | L | 3750000 | Pemalang | HRD | +------------+------------------+---------------+----------+------------+------------+ 10 rows in set (0.04 sec)Dari data diatas,
- Tampilkan data rata-rata gaji seluruh pegawai.
mysql> SELECT AVG(gaji) "Rata Rata Gaji" -> FROM tbl_pegawai; +----------------+ | Rata Rata Gaji | +----------------+ | 7425000.0000 | +----------------+ 1 row in set (0.04 sec)
- Tampilkan data rata-rata gaji pegawai berdasarkan jenis kelamin
mysql> SELECT jenis_kelamin, AVG(gaji) "Rata Rata Gaji" -> FROM tbl_pegawai -> GROUP BY jenis_kelamin; +---------------+----------------+ | jenis_kelamin | Rata Rata Gaji | +---------------+----------------+ | L | 3050000.0000 | | P | 11800000.0000 | +---------------+----------------+ 2 rows in set (0.04 sec)
- Tampilkan data rata-rata gaji pegawai berdasarkan departemen
mysql> SELECT departemen, AVG(gaji) "Rata Rata Gaji" -> FROM tbl_pegawai -> GROUP BY departemen; +------------+----------------+ | departemen | Rata Rata Gaji | +------------+----------------+ | ACC | 3000000.0000 | | DIR | 9000000.0000 | | FIN | 2250000.0000 | | HRD | 2875000.0000 | | IT | 2000000.0000 | | MKT | 24000000.0000 | +------------+----------------+ 6 rows in set (0.00 sec)
Salam,
Nursalim
No comments:
Post a Comment