PENGERTIAN
Fungsi agregat adalah fungsi yang
digunakan untuk mengkoleksi sejumlah data yang tersimpan pada suatu field dan
menampilkannya dalam bentuk nilai tunggal. Fungsi agregat yang ada dalam SQL
adalah SUM, MAX, MIN, AVG dan COUNT. Fungsi agregat ini bisa digunakan pada
perintah SELECT untuk menampilkan data dengan memunculkan nilai tunggal.
Kegunaan masing-masing fungsi agregat antara lain :
SUM digunakan untuk menghitung total jumlah
data yang tersimpan pada sebuah field. Bentuk umum penggunakan fungsi SUM
adalah :
SUM(nama_field)
MAX digunakan untuk menentukan nilai tertinggi
dari data yang tersimpan pada sebuah field. Bentuk umum penggunaan fungsi MAX
adalah :
MAX(nama_field)
MIN digunakan untuk menentukan nilai terendah
dari data yang tersimpan pada sebuah field. Bentuk umum penggunaan fungsi MAX
adalah :
MIN(nama_field)
AVG digunakan untuk mencari nilai rata-rata
dari data yang tersimpan pada sebuah field. Bentuk umum penggunaan fungsi AVG
adalah :
AVG(nama_field)
COUNT digunakan untuk menghitung jumlah record dalam
sebuah tabel. Bentuk umum penggunaan fungsi COUNT adalah :
COUNT(nama_field)
IMPLEMENTASI FUNGSI AGREGAT
Sebelum mengimplementasikan fungsi
agregat ini sediakan terlebih dari sebuah database dengan nama dbkantor di
localhost, perintah SQL-nya
Create database dbkantor
Buat sebuah tabel di dalam
database dbkantor dengan struktur seperti berikut :
Tabel
Name :tblpenggajian
|
Deskripsi Field
|
||
Field
Name
|
Field
Type
|
Field
Size
|
|
NiK
Nama
Tpt_lahir
Tgl_lahir
Gol
Ga_pok
Tunj_umum
Tunj_Klg
|
Varchar
Varchar
Varchar
Date
Varchar
Double
Double
Double
|
8
30
20
5
|
Nomor
Induk Karyawan
Nama
Karyawan
Tempat
Lahir
Tanggal
Lahir
Golongan
Gaji
Pokok
Tunjangan
Umum
Tunjangan
Keluarga
|
Perintah SQL-nya
CREATE TABLE tblpenggajian
( nik varchar(8) Primary Key,
Nama varchar(30),
Tpt_lahir varchar(20),
Tgl_lahir date,
Gol Varchar(5),
Ga_pok Double,
Tunj_umum Double,
Tunj_klg Double)
Masukkan data ke tabel tblpenggajian seperti data di bawah
ini
NIK
|
Nama
|
Tpt_lahir
|
Tgl_lahir
|
Gol
|
Ga_pok
|
Tunj_umum
|
Tunj_klg
|
001-1
|
Andika
|
Bukittinggi
|
10 Jan 83
|
I
|
1.000.000
|
300.000
|
0
|
002-1
|
Desi
|
Padang
|
3 Okt 88
|
I
|
1.000.000
|
300.000
|
300.000
|
003-2
|
Deni
|
Bukittinggi
|
1 Jan 89
|
II
|
1.500.000
|
400.000
|
300.000
|
004-2
|
Wati
|
Bukittinggi
|
18 Des 87
|
II
|
1.500.000
|
400.000
|
0
|
005-1
|
Desi
|
Jambi
|
10 Mei 94
|
I
|
1.000.000
|
300.000
|
200.000
|
006-3
|
Iwan
|
Padang
|
11 Apr 95
|
III
|
2.000.000
|
550.000
|
300.000
|
007-3
|
Sandra
|
Bukittinggi
|
31 Mar 92
|
III
|
2.000.000
|
550.000
|
300.000
|
008-1
|
Putra
|
Bukittinggi
|
17 Okt 79
|
I
|
1.000.000
|
300.000
|
0
|
009-3
|
Ario
|
Jakarta
|
2 Mar 88
|
III
|
2.000.000
|
550.000
|
200.000
|
010-1
|
Jaya
|
Padang
|
3 Jun 89
|
I
|
1.000.000
|
300.000
|
200.000
|
Perintah SQL-nya :
INSERT
INTO tblpenggajian (nik, Nama, Tpt_lahir, Tgl_lahir, Gol, Ga_pok, Tunj_umum,
Tunj_klg) VALUES
('001-1',
'Andika', 'Bukittinggi', '1983-01-10', 'I', 1000000, 300000, 0),
('002-1',
'Desi', 'Padang', '1988-10-03', 'I', 1000000, 300000, 300000),
('003-2',
'Deni', 'Bukittinggi', '1989-01-01',
'II', 1500000, 400000, 300000),
('004-2',
'Wati', 'Bukittinggi', '1987-12-18',
'II', 1500000, 400000, 0),
('005-1',
'Desi', 'Jambi', '1994-05-10', 'I',
1000000, 300000, 200000),
('006-3',
'Iwan', 'Padang', '1995-04-11', 'III',
2000000, 550000, 300000),
('007-3',
'Sandra', 'Bukittinggi', '1992-03-31',
'III', 2000000, 550000, 300000),
('008-1',
'Putra', 'Bukittinggi', '1979-10-17',
'I', 1000000, 300000, 0),
('009-3',
'Ario', 'Jakarta', '1988-03-02', 'III',
2000000, 550000, 200000),
('010-1',
'Jaya', 'Padang', '1989-06-03', 'I',
1000000, 300000, 200000)
Contoh 1:
Penggunaan
Fungsi SUM, contoh untuk menampilkan berapa total Gaji pokok karyawan golongan
II, perintah SQL-nya
SELECT
SUM(ga_pok) FROM tblpenggajian
WHERE
gol = 'II'
Maka akan
mendapatkan hasi 14000000 sebagai hasil tunggal penjumlahan semua data pada
field Ga_pok.
Contoh 2:
Penggunaan
Fungsi MAX untuk menampilkan Gaji pokok karyawan yang paling tinggi, perintah
SQL-nya
SELECT
max(ga_pok) FROM tblpenggajian
Maka akan
didapatkan hasil 2000000, sebagai gaji pokok tertinggi.
Contoh 3:
Menampilkan
gaji bersih karyawan yang paling tinggi. Sementara pada tabel tblpenggajian
tidak ada field yang menampung data gaji bersih. Secara logika gaji bersih bisa
didapatkan dari Ga_pok + Tunj_umum + Tunj_klg. Penambahan ini bisa langsung
kita manfaatkan untuk menampilkan data. Perintah SQL-nya :
SELECT
max(ga_pok + Tunj_umum + Tunj_klg) FROM tblpenggajian
Sehingga
bisa didapatkan angka 2850000 sebagai hasil dari gaji bersih tertinggi.
Contoh 4:
Menampilkan
Tunj_klg paling kecil, perintah SQL-nya :
SELECT
min(Tunj_klg) FROM tblpenggajian
Sehingga
didapatkan nilai 0 sebagia tunjangan keluarga paling kecil.
Contoh 5:
Menghitung
rata-rata pendapatan bersih karyawan, perintah SQL-nya :
SELECT
AVG(ga_pok + Tunj_umum + Tunj_klg) FROM tblpenggajian
Contoh 6:
Menghitung berapa
orang karyawan golongan II, perintah SQL-nya :
SELECT
COUNT(nik) FROM tblpenggajian
WHERE
gol = 'II'
Maka akan
didapatkan hasil 2 orang karyawan yang golongan II