Pengelompokan & Pengururutan Data
Group by dan Aggregate Function
Dalam Menjalankan sebuah query untuk melakukan pengelompokan data dapat menggunakan Fungsi Group by dan di ikuti oleh Fungsi Aggregat.
· Group by : digunakan untuk menampilkan atau memilih sekumpulan data berdasarkan kelompok data tertentu.
_ Pengelompokan nya biasa nya di sertai oleh Aggregat Fuction
_ Dalam Implementasi nya Aggregat Function harus diikuti oleh Group by bila terdapat Field lain yang dijadikan kriteria pengelompokan
· Aggregate Function : Min(), Max(), Avg(), Sum(), Count()
Group by dan Aggregate Function
· MIN()
Fungsi MIN digunakan untuk mencari nilai minimum dari sekumpulan data yang ada
·
Syntax :
SELECT field-1,…,field-n,
MIN(nama_field)
FROM tabel
GROUP BY field-1,…,field-n
·
MAX()
Fungsi MAX digunakan untuk mencari nilai maksimum dari
sekumpulan data yang ada
· Syntax :
SELECT field-1,…,field-n,
MAX(nama_field)
FROM tabel
GROUP BY field-1,…,field-n
·
AVG()
Fungsi AVG digunakan untuk mencari nilai rata-rata dari sekumpulan data yang ada
Syntax :
SELECT AVG (nama_field),
AS Rata-Rata
FROM table
Atau
SELECT (nama_field)
AVG (nama_field) AS (nama_field_baru)
FROM tabel
GROUP BY (nama_field)
·
SUM()
Fungsi SUM digunakan untuk menjumlahkan nilai dari sekumpulan data yang ada
Syntax :
SELECT field-1,…,field-n,
SUM(nama_field)
FROM tabel
GROUP BY field-1,…,field-n
· COUNT()
Fungsi COUNT digunakan untuk mencari cacah atau banyaknya data
Syntax:
SELECT field-1,…,field-n,
COUNT (nama_field)
FROM tabel
GROUP BY field-1,…,field-n
· ORDER BY
Digunakan untuk mengurutkan data berdasarkan field tertentu
Syntax:
SELECT field-1,field-2,…,field-n
FROM tabel
ORDER BY (field)
urutkan jumlah berdasarkan jumlah pasokan paling sedikit
SELECT kode_pasok, jumlah_pasok
FROM pasok
ORDER BY jumlah_pasok
urutkan jumlah berdasarkan jumlah pasokan paling banyak
SELECT kode_pasok, jumlah_pasok
FROM pasok
ORDER BY jumlah_pasok DESC
Keriteria Data
· HAVING
Menyeleksi data berdasarkan kriteria tertentu, dimana kriteria berdasarkan berupa fungsi aggregate
Syntax:
SELECT field-1,…, field-n, aggregate_function
FROM tabel
GROUP BY field-1,…,field-n
HAVING kriteria_aggregate_function
Contoh :
SELECT kode_customer,
COUNT (jumlah_pembelian) AS cacah_pembelian
FROM pembelian
GROUP BY kode_customer
HAVING COUNT(*)=4
Where
KondisiWhere, digunakan untuk melakukan pemilihan/seleksi data. Penggunaannya dilakukan setelah kata where, dan diikuti oleh :
- · comparison (=,<>,<,>,>=,<=),
- · between,
- · in,
- · like/not like
1. Comparison
Berfungsi untuk membandingkan dua nilai. Tipe data yang seharusnya dibandingkan harus sesuai. Hasil yang diperoleh dari operasi comparison ini berupa nilai logik.
Syntax :
SELECT field-1,…, field-n
FROM tabel
WHERE field = | <> | < | > | <= | >= …
Contoh :
Tampilkan kode barang dan kode suplier yang mempunyai
jumlah pasok 2
SELECT kode_barang, kode _suplier FROM pasok
WHERE jumlah_pasok=2
Tampilkan kode barang dan kode suplier yang jumlah
pasoknya kurang atau sama dengan 5
contoh :
SELECT kode_barang, kode _suplier FROM pasok
WHERE jumlah_pasok<=5
2. Between
Pada prinsipnya between digunakan untuk membandingkan/untuk mengecek apakah suatu nilai berada dalam range atau nilai tertentu.
Syntax:
SELECT field-1,…, field-n
FROM tabel
WHERE field BETWEEN … AND …
Contoh :
Tampilkan kode barang dan kode customer yang jumlah pasoknya antara 4 dan 15 (4 dan 15 termasuk di dalamnya
SELECT kode_barang, kode_customer
FROM pembelian
WHERE jumlah_pembelian BETWEEN 4 AND 15
3. In
Digunakan untuk melakukan pengecekan apakah suatu nilai terdapat pada suatu himpunan tertentu.
SELECT field-1,…, field-n
FROM tabel
WHERE field IN (…, …, …)
Contoh :
Tampilkan kode barang dan kode suplier yang jumlah pasoknya 2,8,12
SELECT kode_barang, kode_suplier
FROM pasok
WHERE jumlah_pasok IN(2,8,12)
ORDER BY jumlah_pasok
4. Like / Not Like…
Digunakan untuk membandingkan data dengan pola tertentu.
SELECT field-1,…, field-n
FROM tabel
WHERE field LIKE | NOT LIKE
Tampilkan customer yang mempunyai kata ‘CIM’ pada alamatnya (pada alamat customer terdapat kata‘CIM’)
SELECT *
FROM customer
WHERE alamat_customer LIKE ‘%CIM%’
Tampilkan customer yang mempunyai kata selain ‘CIM’ pada alamatnya
SELECT *
FROM customer
WHERE alamat_customerNOT LIKE ‘%CIM%’
Agregasi dalam SQL merupakan proses untuk mendapatkan nilai dari sekumpulan data yang telah dikelompokkan. Pengelompokan data didasarkan pada kolom atau kombinasi kolom yang dipilih.
Beberapa fungsi untuk agregasi adalah:
- MAX : mencari data terbesar dari sekelompok data
- MIN : mencari data terkecil dari sekelompok data
- COUNT : mencari cacah data (data NULL tidak akan dimasukkan dalam perhitungan,kecuali disebutkan secara khusus)
- SUM : mencari jumlah dari sekumpulan data numeris
- AVG : mencari rerata dari sekumpulan data numeris
Sintaks SQL untuk melakukan pengelompokan adalah:
SELECT [daftar-kolom-non-agregasi,] daftar-kolom-agregasi
FROM daftar-tabel
[WHERE kondisi-record-dalam-tabel]
[GROUP BY daftar-kolom-agregasi]
[HAVING kodisi-filter-hasil-agregasi]
[ORDER BY daftar-kolom-pengurutan]
SELECT [daftar-kolom-non-agregasi,] daftar-kolom-agregasi
FROM daftar-tabel
[WHERE kondisi-record-dalam-tabel]
[GROUP BY daftar-kolom-agregasi]
[HAVING kodisi-filter-hasil-agregasi]
[ORDER BY daftar-kolom-pengurutan]
LATIHAN LATIHAN
[1] Tampilkan jumlah
nilai minimum per matakuliah
[2] Tampilkan nilai
maksimum dari semua data pada
tabel NILAI
[3] Tampilkan nim dan
kode mata kuliah yang
mempunyai nilai 90
[4] Tampilkan nim dan
kode mata kuliah yang
mempunyai nilai kurang dari 90
[5] Tampilkan data
mahasiswa yang dari kota
berakhiran “KARTA”
Tidak ada komentar:
Posting Komentar