250 likes | 370 Views
P E R T E M U A N 12. SISTEM BASIS DATA. SQL Lanjutan …. Pengendalian Transaksi. Merupakan perintah yang berfungsi untuk pengendalian pengeksekusian transaksi . pengelompokan dalam perintah DML ini adalah COMMIT dan ROLLBACK. Contoh :. ON ERROR ROLLBACK USE tblgaji
E N D
P E R T E M U A N 12 SISTEM BASIS DATA
PengendalianTransaksi • Merupakanperintah yang berfungsiuntukpengendalianpengeksekusiantransaksi. • pengelompokandalamperintah DML iniadalahCOMMITdanROLLBACK.
Contoh : ON ERROR ROLLBACK USE tblgaji IF BEGINTRANS() REPLACE ALL gaji WITH gaji *1.1 IF.NOT.COMMIT () *Persetujuangagal *User dapatmemilihuntukmencobalagi/ membatalkan ENDIF ENDIF
Pernyataandiatasadalah : • COMMIT untukmenyetujuipengubahan data secarapermanendansekaligusmembawakedalamkeadaanterakhir. • ROLLBACK untukmembatalkanpengubahan data dansekaligusmembawakekeadaanakhir. • ON ERROR digunakanuntukmelakukanpembatalan (via ROLLBACK) sekiranyaterjadisesutukesalahan. • USE digunakanuntukmembuka table yang akandiubah. • BEGINTRANS() digunakanuntukmengawalitransaksi. Jikatransaksidapatdiawali, makafield gajiuntuksemuarekamandinaikan 10% • Padatahapselanjutnyaterdapatpemanggilan COMMIT(). • Sekiranyapersetujuanterhadaprekamanrekaman yang diubahtidakberhasildicapai(.NOT.COMMIT()), makadilakukantindakantindakan yang diaturolehprogrammer.
Fungsi Agregat • Fungsi agregat merupakan fungsi-fungsi yang mengambil koleksi (suatu himpunan atau beberapa himpunan) dan mengembalikan suatu nilai tunggal. • Selain menampilkan nilai-nilai atribut yang ada didalam table, kadang-kadang ada kebutuhan untuk menampilkan data-data agresi seperti banyaknya record, table nilai atribut, rata-rata nilai atribut, dan nilai terbesar atau terkecil. • SQL menyediakan fungsi untuk memproduksi hasil berupa rangkuman tertentu sesuai dengan yang diinginkan, SQL menyediakan 5 (lima) fungsi agregat yang disediakan yaitu COUNT,AVG,SUM, MIN dan MAX.
COUNT • Fungsi COUNT ini digunakan untuk mendapatkan nilai banyaknya record/menghitung jumlah data dari hasil query atau menghitung jumlah baris dengan tidak memperhatikan nilai atribut duplikasi. • Contoh, jika fungsi ini digunakan untuk menghitung jumlah pengarang perkota adalah sebagai berikut : SELECT Kota,COUNT(Kota) FROM tblpengarang GROUP BY Kota
Hasil query di atas adalah sebagai berikut : • Pernyataan COUNT ini juga dapat digunakan untuk menghitung jumlah pengarang perkota, khusus untuk yang jumlah perkotanya yang bernilai lebih dari satu. • SELECT Kota,COUNT(Kota) • FROM tblpengarang • GROUP BY Kota • HAVING COUNT(Kota)>1 • Hasil query di atas adalah sebagai berikut:
AVG • Fungsi AVG ini digunakan untuk mencari nilai rata-rata data suatu atribut numerik dari hasil query atau operasi dengan sekelompok baris untuk memperoleh harga rerata dari kelompok yang ditentukan. • Contoh untuk menampilkan jumlah rata-rata gaji pada table gaji adalah sebagai berikut : SELECT AVG(gaji) FROM tblgaji Hasil query di atas adalah sbb :
SUM • Fungsi SUM ini digunakan untuk mendapat nilai total atau menjumlah nilai suatu atribut numerik dari hasil query atau menjumlahkan sekelompok nilai data dalam kolom atribut. • Contoh untuk menampilkan total gaji pada table gaji adalah sebagai berikut. SELECT SUM(gaji) FROM tblgaji Hasil query di atas adalah sbb :
MIN • Fungsi MIN ini digunakan untuk mendapat nilai terkecil dari suatu atribut dari hasil query atau memilih nilai yang paling kecil dari sekelompok data dalam kolom atribut. • Contoh untuk menampilkan gaji terendah pada table gaji adalah sebagai berikut. SELECT MIN(gaji) FROM tblgaji Hasil query di atas adalah sbb :
MAX • Fungsi MAX ini digunakan untuk mendapat nilai terbesar dari hasil query atau memilih nilai yang paling besar dari sekelompok data dalam kolom atribut. • Contoh untuk menampilkan gaji terbesar pada tabel gaji adalah sebagai berikut: • SELECT MAX(gaji) FROM tblgaji Hasil query di atas adalah sbb :
WHERE • Permintaan data melalui SELECT dapat menggunakan berbagai operator yang dikenakan pada pernyataan WHERE . • Operator-operator yang tersedia adalah OR, NOT, BETWEEN-AND, IN, dan LIKE. • OR • Operator OR dapat digunakan untuk menyatakan keadaan ‘’ATAU’’, contoh untuk memperoleh pengarang yang tinggal di Yogya atau di Bandungo dengan cara sebagai berikut : • SELECT Nama_pengarang, Kota • FROM tblpengarang • WHERE Kota =’Yogyakarta’ OR Kota=’Jakarta’
Hasil query di atas adalah sbb : • NOT • Operator NOT dapat digunakan untuk menyatakan keadaan ‘’TIDAK’’, contoh misalkan Kota <>’Yogyakarta’, bisa ditulis menjadi NOT Kota=’Yogyakarta’ • SELECT Nama _pengarang, Kota • FROM tblpengarang • WHERE NOT Kota=’Yogyakarta’ • Hasil query di atas adalah sebagai berikut:
BETWEEN-AND • Operator BETWEEN-AND dapat digunakan untuk menangani operasi ‘’JANGKAUAN’’, contoh pernyataan untuk mendapatkan pengarang dengan kode 1 hingga 6 dengan cara sebagai berikut: • SELECT Kd_pengarang, Nama_pengarang • FROM tblpengarang • WHERE Kd_pengarang BETWEEN 1 AND 5
IN • Operator IN dapat digunakan untuk menyatakan keadaan ‘’SALAH SATU DIANTARA’’, • Contoh : • SELECT Kd_pengarang, Kota • FROM tblpengarang • WHERE Kota IN (‘Yogyakarta’,’Bandung’, ‘Jakarta’) • Untuk memperoleh nama pengarang yang tinggal di daerah Yogyakarta atau Bandung atau Jakarta, pernyataan di atas sangat identik dengan cara sebagai berikut : • SELECT Nama –pengarang ,Kota • FROM tblpengarang • WHERE Kota =’Yogyakarta’ OR • Kota=’Bandung’ OR • Kota=’Jakarta’
LIKE • Operator Like ini dapat digunakan untuk menyatakan pencocokan, contoh untuk memperoleh semua pengarang yang namanya di awali dengan ‘A’ dengan cara sebagai berikut: • SELECT Nama _pengarang • FROM tblpengarang • WHERE nama LIKE ‘’A%’’ • Pernyataan %berarti ‘”nol, satu, atau sejumlah karakter apa saja’’. • Hasil query di atas adalah sebagai berikut:
Operator Join • SQL mempunyai kemampuan untuk menggabungkan dua tabel atau lebih guna mendapatkan informasi yang diinginkan, dengan proses yang dilakukan dengan nama JOIN. • Inner Join /Join Dalam • INNER JOIN adalah join yang menghasilkan baris-baris , minimal ada sebuah baris di kedua tabel yang sesuai dengan kondisi join. • Baris-baris yang tidak sesuai dengan sebuah baris dari tabel tidak ditampilkan.
Operator Join • SQL mempunyai kemampuan untuk menggabungkan dua tabel atau lebih guna mendapatkan informasi yang diinginkan, dengan proses yang dilakukan dengan nama JOIN. • Inner Join /Join Dalam • INNER JOIN adalah join yang menghasilkan baris-baris , minimal ada sebuah baris di kedua tabel yang sesuai dengan kondisi join. • Baris-baris yang tidak sesuai dengan sebuah baris dari tabel tidak ditampilkan.
SELECT judul.Judul_Buku, judul.Harga, pengarang.Nama_pengarang, pengarang.Alamat • FROM judul INNER JOIN pengarang • ON judul.Kd_Buku=pengarang.Kd_Buku • Hasil query di atas adalah sebagai berikut:
Outer Join • OUTER JOIN adalah join yang menghasilkan semua data dari sebuah tabel dan membatasi data dari tabel lain. • Dalam SQL dapat menggunakan tipe OUTER JOIN dan dibedakan menjadi LEFT Join dan RIGHT Join. • Right Join • Kebalikan dari LEFT Join, jika tidak menemukan hubungan dengan tabel disebelah kiri maka akan ditampilkan NULL. • Pernyataan RIGHT Join adalah sbb :
SELECT judul.Judul_Buku, judul.Harga, pengarang.Nama_pengarang, pengarang.Alamat • FROM judul RIGHT JOIN pengarang • ON judul.Kd_Buku=pengarang.Kd_Buku • Hasil query di atas adalah sebagai berikut:
Left Join • Akan menampilkan tabel disebelah kanannya (dalam hal ini tabel nilai) dengan NULL jika tidak terdapat hubungan antara tabel disebelah kiri. • Pernyataan LEFTJoin adalah sbb : • SELECT judul.Judul_Buku, judul.Harga, • pengarang.Nama_pengarang, pengarang.Alamat • FROM judul LEFT JOIN pengarang • ON judul.Kd_Buku=pengarang.Kd_Buku • Hasil query di atas adalah sebagai berikut:
Distinct • Digunakan untuk menghilangkan duplikat. • Contoh : • SELECT DISTINCT item, Amount • FROM SALES;