Nama : Ahmad Nafis Syahroni
NIM : 13650131
Matkul : Prakt DBD
Kelas : D
AGREGASI SQL dan VIEW
A. Pembahasan
Agregasi
sql yang diperlukan dalam perhitungan data
View
yang merupakan tabel bayangan yang berisi query baik dari satu tabel
B. Tujuan
Mahasiswa
memahami operator agregasi sql sehingga mempermudah dalam hal perhitungan data.
Mahasiswa
memahami cara penggunaan view.
C. Dasar
Teori
1. AGREGATE
OPERATOR
Fungsi
aggregate atau disebut fungsi ringkasan digunakan untuk melakukan penghitungan
menjadi sebuah nilai dari beberapa nilai input. Aggregate dapat
digabungkan dengan sebuah parameter seperti WHERE untuk menghasilkan suatu
hasil yang lebih kompleks lagi.
AGREGATE
|
KETERANGAN
|
COUNT
(*)
|
Menghitung
Jumlah Baris
|
SUM
(NAMA KOLOM)
|
Menghitung
Penjumlahan Data
|
MAX
(NAMA KOLOM)
|
Mencari
Nilai Terbesar
|
MIN
(NAMA KOLOM)
|
Mencari
Nilai Terkecil
|
AVG
(NAMA KOLOM)
|
Mencari
Nilai Rata-Rata
|
2. GROUP
BY
Group
By merupakan fungsi yang digunakan untuk melakukan pengelompokan dari perintah
SELECT. Group by seringkali diperlukan untuk menjalankan agregate menjadi
sebuah kelompok dari hasil Query.
3. 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.
4. CASE
Meskipun
SQL bukan merupakan sebuah prosedur bahasa perograman, namun dalam prosesnya
dapat dengan bebas mengontrol data yang kembali dari query. Kata WHERE
menggunakan perbandingan untuk mengontrol pemilihan data, sedangkan CASE perbandingan
dalam bentuk output kolom. Jadi intinya penggunaan CASE akan membentuk
output tersendiri berupa sebuah kolom baru dengan data dari operasi yang di
dalamnya
5. VIEW
Views
dapat juga disebut tabel bayangan tetapi bukan temporary table, bukan
juga merupakan sebuah tabel yang asli. Suatu view adalah suatu relasi virtual
yang tidak perlu ada database tetapi dapat diproduksi atas permintaan oleh
pemakai tertentu, pada ketika permintaan. Satu lagi 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.
D. Hasil
Percobaan Mysql
Tugas praktikum
Mahasiswa
|
Nim_mah
(primary
key)
|
Nama_mah
|
Alamat_mah
|
Id_fak
(Foreign
key)
|
Fakultas
|
Id_fak
(Primary
key)
|
Nama_fak
|
Dari bab sebelumnya kita telah membuat tabel mahasiswa dan fakultas. jadi kita tidak usah membuat ulang tabel lagi.
Nim : 12
Nama
: edi
Alamat
: malang
Fakultas
: SAINTEK
Nim
: 13
Nama
: sinta
Alamat
: jogja
Fakultas : SAINTEK
Nim
: 14
Nama
: luki
Alamat
: ponorogo
Fakultas : PSIKOLOGI
· Dari tabel mahasiswa yang telah dibuat tambahkan
3 data lagi , tambahkan kolom gender kemudian update datanya dan tampilkan
banyaknya data mahasiswa yang telah di inputkan. Kemudian cari nim atau id
mahasiswa yang paling kecil, paling besar dan rata ratanya.
· Tampilkan jumlah mahasiswa berdasarkan fakultas.
Sehingga hasilnya seperti berikut
Nama Fakultas
|
Count (*)
|
Saintek
|
2
|
Psikologi
|
1
|
·
Tampilkan seperti nomor 3 dengan persyaratan
jumlah mahasiswa yang lebih dari sama dengan 2 saja yang ditampilkan.
·
Tampilkan data mahasiswa dengan persyaratan,
jika jenis kelaminnya “L” maka tertulis laki-laki dan bila “P” maka tertulis
perempuan.
·
Buatlah view untuk query penampilan data
mahasiswa, fakultas. Ambil berdasarkan nim, nama mahasiswa, nama fakultas.
E. Perbandingan
ke 2 DBMS
Perbandingan
nya terletak pada spasi setiap Query
Perbedaan
Mysql
|
Postgres
|
select
count(*) from mahasiswa;
|
select
count (*) from mahasiswa;
|
select
min(nim_mah) from mahasiswa;
|
select
min (nim_mah) from mahasiswa;
|
select
max(nim_mah) from mahasiswa;
|
select
max (nim_mah) from mahasiswa;
|
select nama_fak, count(*) as jumlah from mahasiswa,
fakultas where mahasiswa.id_fak = fakultas.id_fak group by nama_fak;
|
select nama_fak, count (*) as jumlah from mahasiswa, fakultas where mahasiswa.id_fak
= fakultas.id_fak group by nama_fak;
|
select nama_fak, count(*) as jumlah from mahasiswa, fakultas where
mahasiswa.id_fak = fakultas.id_fak group by nama_fak having count (*)>2
;
|
select nama_fak, count (*) as jumlah from mahasiswa, fakultas where
mahasiswa.id_fak = fakultas.id_fak group by nama_fak having count (*)>2
;
|
Persamaan
Mysql
dan Postgres sama
|
select avg (nim_mah)
from mahasiswa;
|
select avg (nim_mah)
from mahasiswa where nim_mah >12;
|
select nim_mah, alamat_mah, nama_mah,
id_fak, no_telp, case when gender = 'L' then 'laki-laki' else 'perempuan' end
as gender from mahasiswa;
|
create view mahasiswa_fakultas as
select nim_mah, nama_mah, nama_fak from mahasiswa, fakultas where
mahasiswa.id_fak = fakultas.id_fak;
|
F. Kesimpulan
·
Fungsi COUNT
Untuk menghitung frekuensi pemunculan suatu data digunakan fungsi COUNT.
Sebagaimana fungsi SUM, maka COUNT hanya dapat digunakan apabila data tersebut
telah ditentukan kriterianya dengan klausa
·
Fungsi AVG
Fungsi ini hanya dapat digunakan untuk tipe data numeric, sebagaimana fungsi SUM. AVG menghitung rata-rata sekumpulan data yang telah ditentukan kriterianya menggunakan WHERE.
Fungsi ini hanya dapat digunakan untuk tipe data numeric, sebagaimana fungsi SUM. AVG menghitung rata-rata sekumpulan data yang telah ditentukan kriterianya menggunakan WHERE.
·
Fungsi MIN dan MAX
Untuk mencari nilai maksimum dan minimum dari sekumpulan data anda dapat menggunakan fungsi MIN dan MAX. Misalkan anda ingin mencari jumlah barang yang paling banyak terjual maka dijalankan perintah berikut :
SELECT MAX(Quantity) as Maksimum from [Order Details]
Untuk mencari nilai maksimum dan minimum dari sekumpulan data anda dapat menggunakan fungsi MIN dan MAX. Misalkan anda ingin mencari jumlah barang yang paling banyak terjual maka dijalankan perintah berikut :
SELECT MAX(Quantity) as Maksimum from [Order Details]
Fungsi Agregasi/Agregates
Fungsi yang dihasilkan dari sebuah group data.
·
SUM = Untuk menjumlah suatu kolom
tertentu yang telah definisikan dalam perintah select.
Sintak : SELECT SUM (nama_kolom) FROM
nama_tabel [WHERE = Kondisi]
Contoh : SELECT SUM (SKS) FROM
Mata_Kuliah
·
COUNT = Untuk menghitung jumlah baris
dalam sebuah tabel
Sintak : SELECT COUNT nama_kolom FROM
nama_tabel [WHERE]
Contoh : SELECT COUNT (*) FROM mahasiswa
SELECT COUNT (SKS) FROM Mata_Kuliah
·
AVG = Untuk menghitung nilai rata – rata
dari suatu kolom tertentu yang telah definisikan dalam perintah select.
Sintak : SELECT AVG nama_kolom FROM
nama_tabel [WHERE]
Contoh : SELECT AVG (SKS) FROM
Mata_Kuliah
·
MIN = Untuk mengetahui nilai terkecil
dari sebuah kolom tertentu dalam perintah select.
Sintak : SELECT MIN nama_kolom FROM
nama_tabel [WHERE]
Contoh : SELECT MIN (SKS) FROM
Mata_Kuliah
·
MAX = Untuk mengetahui nilai terbesar
dari sebuah kolom tertentu dalam perintah select.
Sintak : SELECT MAX nama_kolom FROM
nama_tabel [WHERE]
Contoh : SELECT MAX (SKS) FROM
Mata_Kuliah
G. Saran
Kritik
Saran saya jika mengerjakan tugas postres atau mysql
kerjakanlah dengan teliti,. Jika tidak teliti aka nada banyak permasalahan yang
sepeleh alias eror. Dan perbandingan mysql dan postgres sangatlah tidak bedah
jauh. Malah ada yang sama persis querynya.
Kritik saya Query nya bikin pusing,. Jadi kita harus
browsing dulu untuk mengetahui perbandingan DBMS ke dua ini. Tapi Alhamdulillah
praktikum modul lima ini soal nya hanya 6 jadi tidak terlalu pusing berlebihan.
Oke
H. Manfaat
bagi pembaca
Mungkin dengan membaca postingan saya ini,. Anda
akan mendapatkan beberapa informasi tentang query Kedua DBMS. Terutama pada bab
V ini yaitu AGREGASI SQL dan VIEW.
Daftar Pustaka
Blog Archive » AGREGASI SQL DAN VIEW.htm
Aprily Surya Rizanda Saputra Tutorial SQL.htm
basis data (sintax) [Archive] - KoLU.htm
0 comments:
Post a Comment