BAB IV STRUCTURED QUERY LANGUAGE (SQL) 4.1 Tujuan Praktikum 1. Mengetahui dan memahami konsep dasar bahasa SQL. 2.

Mengetahui dan memahami Data Manipulation Language. 3. Mengetahui dan memahami penggunaan perintah-perintah dalam SQL. 4.2 4.2.1 Tinjauan Pustaka Data Manipulation Language (DML) DML atau Data Manipulation Language adalah kumpulan perintah query yang digunakan untuk memanipulasi data. Pernyataan-pernyataan Data manipulation Language (DML) meliputi : 1. INSERT Pernyataan INSERT digunakan untuk menambahkan atau menyimpan satu atau lebih baris data baru ke dalam suatu tabel yang telah terdefinisi di dalam suatu database. Sintaks INSERT adalah sebagai berikut :
INSERT INTO nama_tabel [(kolom)] VALUES (values); Kode Program 4.1 Sintaks Insert

2. UPDATE Pernyataan UPDATE digunakan untuk mengganti nilai pada satu atau lebih data yang telah ada di dalam tabel. Sintaks UPDATE sebagai berikut :
UPDATE nama_tabel SET kolom = value [,kolom=value,…] WHERE kondisi Kode Program 4.2 Sintaks Update

Pernyataan UPDATE mengubah nilai kolom yang ditetapkan dalam klausa SET. Kolom yang tidak terdaftar pada klausa SET tidak akan

Keyword dan informasi yang menghubungkannya disebut klausa. SELECT * FROM nama_tabel Kode Program 4. Data yang dihapus tidak bisa hanya satu field saja. jika klausa WHERE tidak disertakan pada pernyataan DELETE. DELETE Pernyataan DELETE digunakan untuk menghapus satu atau lebih data yang telah ada di dalam tabel. melainkan satu baris secara keseluruhan. Klausa utama yang digunakan pada pernyataan SELECT meliputi : 1. daftarkan masing – masing kolom dalam klausa SET yang dipisahkan dengan tanda koma. banyak baris atau semua baris yang diinginkan tergantung pada kondisi yang diberikan. Jika tidak ada klausa WHERE.4 Sintaks Select 4. Untuk mengubah lebih dari satu kolom.2. Interbase akan menghapus seluruh data yang ada di dalam suatu tabel. maka nilai pada suatu kolom akan di update secara keseluruhan. 4. Jika tabel yang . Perintah menghapus dapat dilakukan terhadap satu baris. Kode Program 4.diubah. 3. Perintah DELETE hanya menghapus baris (record) dan bukan tabelnya. Sintaks DELETE adalah sebagai berikut : DELETE nama_tabel WHERE kondisi. Klausa WHERE digunakan untuk menentukan kriteria baris yang akan di update.2 Klausa Pernyataan SELECT mempunyai enam keyword utama. SELECT Pernyataan SELECT digunakan untuk membaca dan menampilkan data yang disimpan dalam sebuah tabel.3 Sintaks Delete Pernyataan DELETE digunakan untuk menghapus data yang ada di dalam tabel. FROM Klausa FROM digunakan untuk menentukan dari tabel mana pernyataan SELECT akan mengambil data.

Klausa WHERE bersifat opsional.7 Sintaks Klausa Order By Keyword ASC digunakan untuk mengurutkan data dalam urutan menaik (Ascending).6 Sintaks Klausa Where Teks yang mengikuti keyword WHERE disebut search condition. WHERE Klausa WHERE digunakan untuk menentukan kondisi pencarian yang digunakan untuk membatasi baris yang diperoleh dari suatu tabel. Sintaks klausa FROM sebagai berikut : FROM table_reference [.…] Kode Program 4.3.didaftarkan pada klausa FROM lebih dari satu maka masing – masing tabel dipisahkan dengan tanda koma.n. sebab pernyataan SELECT akan mencari baris yang sesuai dengan kondisi yang ditetapkan di dalam klausa WHERE.table_reference]. 4.5 Sintaks Klausa From 2.2. Keyword ASC dan DESC bersifat opsional. Keyword DESC digunakan untuk mengurutkan data dalam urutan menurun (Descending). Sintaks klausa ORDER BY sebagai berikut : ORDER BY [col_name | int] [ASC[ENDING] | DESC[ENDING]] [. ORDER BY Klausa ORDER BY digunakan untuk mengurutkan data berdasarkan pada salah satu kolom di dalam suatu tabel. Keyword int merupakan nomor urut kolom yang terdaftar di dalam pernyataan SELECT. Kode Program 4. Kode Program 4. 3. Sintaks klausa WHERE adalah sebagai berikut : WHERE <search_condition>. GROUP BY .…. Int dimulai dengan nomor urut 1. Klausa FROM harus disertakan di dalam pernyataan SELECT. Penggunaan klausa ORDER BY bersifat opsional. Interbase secara default menggunakan keyword ASC pada klausa ORDER BY.

dan digunakan untuk mencari baris yang memenuhi kriteria relasi tertentu.Klausa GROUP BY digunakan untuk mengelompokkan baris berdasarkan kolom tertentu di dalam suatu tabel. colum_reference…] Kode Program 4. Penggunaan klausa GROUP BY bersifat opsional. Sintaks klausa GROUP BY adalah sebagai berikut : GROUP BY colum_reference [. maka harus menggunakan GROUP BY untuk mengelompokkan kumpulan hasil masing – masing kolom non aggregate. 5. Tabel didaftarkan dalam klausa FROM. .3 Query Join Menggabungkan tabel mengizinkan pernyataan SELECT untuk mendapatkan kembali data dari dua atau lebih tabel yang terdefinisi di dalam suatu database. HAVING Klausa HAVING digunakan untuk menentukan kondisi pencarian yang digunakan untuk membatasi baris yang diperoleh dari suatu tabel. Kolom yang memiliki nilai atau data yang sama akan dikelompokkan dan diwakili oleh satu data. Keyword ON bersifat optional. Klausa WHERE menentukan kriteria baris yang didapatkan kembali dari pernyataan SELECT. Informasi di dalam pernyataan SELECT menggambarkan suatu gabungan tabel.2. Sintaks klausa HAVING adalah sebagai berikut : HAVING <search_condition> Kode Program 4. Ketika menggunakan query yang mempunyai kolom aggregate (AVG. Klausa having bersifat opsional dan digunakan dengan klausa GROUP BY. Tabel hasil disebut dynamic table atau virtual table. Interbase membangun suatu tabel yang berisi hasil operasi gabungan.8 Sintaks Klausa Group By Klausa GROUP BY digunakan untuk mengelompokkan data yang didapatkan kembali dari fungsi aggregate. MAX atau SUM) dan kolom non aggregate. COUNT. Klausa HAVING tidak dapat digunakan pada pernyataan SELECT. MIN.9 Sintaks Klausa Having 4.

Idak ada suatu nama yang dikenali secara resmi untuk gabungan ini.3. Non – equi – joins Gabungan (join) yang menghubungkan baris berdasarkan pada perbandingan selain dari persamaan dalam kolom gabungan. tetapi demi kesederhanaan komparatif.4. maka baris ini tidak disertakan dalam tabel hasil. Equi – joins Menghubungkan baris berdasarkan pada hubungan persamaan atau hubungan nilai – nilai umum di dalam kolom gabungan (join). Inner join adalah jenis join yang umum sebab inner join membatasi data yang dikembalikan dan memperlihatkan suatu hubungan yang jelas antara dua atau lebih. Operator relasional INNER JOIN menggunakan konsep hubungan relasional antara dua himpunan. Ada tiga jenis inner join yaitu : a. 4.3. b. Reflexive atau self – join Membandingkan nilai – nilai di dalam kolom tabel tunggal.1 INNER JOIN Menghubungkan baris dalam tabel berdasarkan pada kondisi gabungan (join) yang dispesifikasikan dan hanya mengembalikan baris yang cocok atau sesuai dengan kondisi gabungan.2. dan mendapatkan kembali baris manapun dari tabel mereka dapat digolongkan sebagai gabungan . Ada tiga jenis outer join yaitu : a. Outer join bermanfaat untuk mengamati baris yang digabungkan dalam konteks baris yang tidak bertemu kondisi – kondisi gabungan (join condition). c.2. yang memetakan anggota suatu himpunan ke anggota himpunan yang lain yang memenuhi kriteria tertentu. Left Outer Join Mendapatkan kembali semua baris dari tabel kiri dalam suatu gabungan (join). Jika suatu kolom yang digabungkan memiliki nilai NULL pada baris yang direlasikan.2 OUTER JOIN Menghubungkan baris antar tabel berdasarkan pada kondisi gabungan (join) yang dispesifikasikan dan mengembalikan baris baik yang cocok atau sesuai dengan kondisi gabungan ataupun yang tidak cocok.

Right Outer Join Mendapatkan kembali semua baris dari tabel kanan dalam suatu gabungan (join).10 Sintaks Fungsi Average Nilai rata – rata adalah jumlah total nilai – nilai kolom dari semua baris di dalam sekumpulan data dibagi dengan jumlah baris.3 UNION Operator UNION berguna untuk menggabungkan hasil dari dua buah query tanpa ada baris yang kembar.kanan yang cocok (match) dengan kondisi pencarian yang ditetapkan di dalam keyword ON. Fungsi aggregate digunakan di dalam pernyataan SELECT.2.3. Kata DISTINCT ditambahkan untuk menghitung hanya nilai yang berbeda. atau suatu kelompok logika yang dihasilkan oleh klausa GROUP BY.4 Query Agregation Fungsi aggregate digunakan untuk mengkalkulasi nilai dari sekelompok data pada suatu group.2. 4. Kumpulan data dapat berupa seluruh tabel. c. Keyword ALL bersifat opsional.2. 4.4. dan mendapatkan kembali baris manapun dari tabel kiri yang cocok (match) dengan kondisi pencarian yang ditetapkan di dalam keyword ON. Nilai . Sintaks fungsi AVG adalah sebagai berikut : AVG ([ALL] <val> | DISTINCT <val>) Kode Program 4. 4. Keyword ALL (default) digunakan untuk mengembalikan nilai rata – rata untuk semua baris ketika keyword DISTINCT tidak ditentukan atau tidak digunakan. b.1 AVG Fungsi AVG digunakan untuk menghitung rata – rata pada suatu kolom tertentu. Full Outer Join Mendapatkan kembali semua baris dari kedua tabel kanan dan kiri dalam suatu gabungan (join) dengan mengabaikan kondisi pencarian yang ditetapkan di dalam keyword ON. Kelompok nilai ini merupakan semua data di dalam kolom tertentu pada kumpulan baris yang telah ditentukan. suatu kumpulan data yang terfilter.

4.2.4 MIN Fungsi MIN digunakan untuk mencari nilai minimum (nilai terkecil) di dalam suatu kolom tertentu.11 Sintaks Fungsi Summary Keyword ALL (default) digunakan untuk menjumlahkan semua nilai kolom tertentu ketika keyword DISTINCT tidak ditentukan atau tidak digunakan. Sintaks fungsi MIN adalah sebagai berikut : MIN ([ALL] <val> | DISTINCT <val> ) Kode Program 4.4. Keyword DISTINCT mengabaikan atau menghilangkan nilai – nilai baris duplikat di dalam kolom ketika menjmlahkan nilai – nilai pada kolom tertentu.kolom 0 (nol) disertakan dalam perhitungan nilai rata – rata.2. 4. 4. Jumlah nilai kolom inni merupakan jumlah nilai kolomdari sekumpulan nilai kolom tertentu yang telah dikelompokkan oleh klausa GROUP BY. Nilai 0 (nol) disertakan dalam perhitungan – perhitungan fungsi SUM sedangkan nilai kolom NULL tidak disertakan dalam perhitungan fungsi SUM.3 MAX Fungsi MAX digunakan untuk mencari nilai maksimum (nilai terbesar) di dalam suatu kolom tertentu. Sintaks fungsi SUM adalah sebagai berikut : SUM ([ALL]) <val> | DISTINCT <val>) Kode Program 4. maka fungsi SUM menghitung jumlah nilai kolom untuk masing – masing group. Nilai kolom NULL tidak disertakan dalam perhitungan nilai rata – rata. Sintaks fungsi MIN adalah sebagai berikut : MAX ([ALL] <val> | DISTINCT <val> ) Kode Program 4. Artinya nilai – nilai duplikat di dalam kolom akan dikelompokkan dan diwakili oleh satu data sehingga keyword DISTINCT hanya menjumlahkan nilai – nilai kolom yang telah diwakili oleh data tertentu.4. Ketika fungsi SUM digunakan bersamaan dengan klausa GROUP BY. Keyword ALL bersifat opsional.2.13 Sintaks Fungsi Min .2 SUM Fungsi SUM digunakan untuk menjumlahkan nilai suatu kolom tertentu.12 Sintaks Fungsi Max 4.

Pada Command Line buka direktori dimana MySQL terinstal. sebagai berikut : COUNT (* | [ALL] <val> | DISTINCT <val> ) Kode Program 4. Proses Back-Up (Export) Untuk melakukan proses back-up (eksport) dilakukan dengen mengetik query berikut: mysql dump –u root –ppasswordnama_database > nama_file_backup. 4.2. Misal : terletak di C:\Xampp\mysql\bin Cara membuka direktori tersebut adalah: C:\Xampp\mysql\bin Kode Program 4.sql Kode Program 4.5 COUNT Fungsi COUNT digunakan untuk menghitung jumlah baris yang didapatkan kembali dari suatu pernyataan SELECT.15 Membuka Direktori Kemudian tekan ENTER untuk mengeksekusi perintah tersebut. Pernyataan SELECT dapat berupa query tunggal atau query multitabel. kecuali jika karakter wildcard (*) digunakan.14 Sintaks Fungsi Count Sintaks fungsi COUNT adalah Keyword ALL (default) digunakan untuk menghitung jumlah semua baris ketika keyword DISTINCT tidak ditentukan atau digunakan.4.16 Proses Back-Up . 3. import dan export tidak dapat dihindari.4. Nilai kolom NULL tidak disertakan dalam perhitungan fungsi COUNT kecuali dalam menghitung jumlah baris. Buka Command Line dengan meng-klik tombol START lalu lakukan pencarian Command Line dengan mengetik CMD.exe 2.5 Backup Database Dalam efisiensi data dalam database. Berikut adalah acara untuk melakukan back-up database dalam bentuk file *.sql dengan menggunakan command line: 1. kemudian tekan enter untuk mengeksekusi cmd.2. Untuk import dan export database dapat dilakukan melalui command line.

terkadang query didalam query juga sangat dibutuhkan.6 Query Dalam Query Di dalam pembuatan database.pengarang FROM tb_buku WHERE id_kategori IN ( SELECT id_kategori WHERE kategori=’Komik’).17 Tampilan Proses Back-Up pada CMD 4.18 Proses Back-Up Atau pada Command Line tampilannya sebagai berikut: c:\xampp\mysql\bin mysqldump –u root – ppasswordnama_database > nama_file_backup Kode Program 4.Pada Command Line tampilannya sebagai berikut: c:\xampp\mysql\bin mysqldump –u root – ppasswordnama_database > nama_file_backup. Apabila ingin menampilkan buku dengan suatu kategori tertentu. Penggunaan query dalam query dapat dicontohkan sebagai berikut: Terdapat Tabel buku dan Tabel kategori didalam database Toko.2.3 Pembahasan dan Analisa . Berikut query nya: SELECT tb_buku.nama_buku tb_buku.20 Contoh Query didalam Query 4. maka query nya adalah dengan memanfaatkan query didalam query dengan menggunakan SELECT. Kode Program 4. Proses Restore (Import) Untuk melakukan restore (import) database dapat dilakukan dengan query berikut: mysql dump –u root –ppasswordnama_database > nama_file_backup Kode Program 4.19 Tampilan Proses Back-Up pada CMD 4.sql Kode Program 4.

INSERT Contoh database awal : Gambar 4.1 Gambar awal database nasabah_tb Kita akan melakukan penambahan/insert pada table nasabah_tb dengan sintax sebagai berikut : INSERT INTO nasabah_tb VALUES (‘104’.’Denpasar’.3. UPDATE Kita akan mencoba mengubah nama dari salah satu nasabah dengan kode nasabah 101 dengan cara menggunakan query update UPDATE nasabah_tb SET nm_nsbh_tb = ‘Day’ WHERE Kode Program 4.22 Contoh query update kd_nsbh_tb = 101. Kode Program 4.2 Gambar setelah penginputan 2.’Mentari’.Dalam bab ini akan dibahas mengenai hasil praktikum modul 2 adalah sebagai berikut: 4.1 Query manipulation 1.’20000’).21 Contoh query insert Setelah melakukan penginputan maka hasilnya akan langsung terlihat pada database seperti gambar dibawah Gambar 4. Dan pada database akan mengubah nama ‘Dhanan’ menjadi ‘Day’ karena kode yang dipilih adalah 101.seperti gambar di bawah .

23 Contoh query delete WHERE disini digunakan sebagai kondisi bagian dari table mana yang akan dihapus yaitu seluruh data dengan saldo_tb = 200000.contoh sintak seperti dibawah adalah menampilkan seliruh data SELECT * FROM nasabah_tb.Gambar 4. delete adalah kebalik dari inser dan pada praktikum kali ini kami akan menghapus salah satu dengan saldo = 200000 DELETE FROM nasabah_tb WHERE saldo_tb = 200000.24 Contoh query select Dan output databasenya adalah .3 Gambar setelah dilakukan update 3. Kode Program 4. DELETE Delete adalah query yang digunakan untuk menghapus data pada table. SELECT Select digunakan untuk menampilkan data yg ada pada sebuah table.dan hasil akhir table seperti di bawah ini Gambar 4. Kode Program 4.4 Gambar setelah dilakukan delete 4.

2 4.Gambar 4. contoh sintax SELECT SUM(saldo_tb) FROM nasabah_tb.akan dihitung berapa banyak ada record yang sama pada suatu tabel.5 tampilan tabel 4.3.3 Query Join Query Agregation dan Grouping 1. . Kode Program 4. COUNT Digunakan untuk menghitug berapa data yang ada pada sebuah kolom table. SUM SUM adalah perintah query yang digunakan untuk menjumlahkan data yang ada pada suatu kolom.24 Contoh query count Dan maka perintah count akan menghitung berapa jumlah alamat yang bernama Denpasar akan dihitung 2.6 tampilan awal table Dan dengan menggunakan COUNT.3. dengan menggunakan contoh sintax SELECT COUNT(*) FROM nasabah_tb WHERE almt_nsbh_tb = ‘Denpasar’. Gambar dibawah adalah gambar awal dari sebuah table Gambar 4.

5 Simpulan Lampiran . Query diatas adalah perintah untuk mencari rata – rata pada kolom saldo.outputnya 4.4 4. MIN MIN adalah query yang digunakan 4. MAX MAX adalah query yang digunakan untuk mencari nilai max(terbesar) pada sebuah kolom. AVERAGE AVERAGE adalah perintah untuk mencari rata – rata pada suatu record data.dan output databasenya adalah 3.contoh sintax SELECT AVG(saldo_tb) as rata_rata FROM nasabah_tb.Sintax diatas adalah perintah untuk menjumlahkan saldo_tb pada table nasabah_tb.contoh sintax SELECT MAX(saldo_tb) AS saldo_tertinggi FROM nasabah_tb. Hasil output databasenya seperti gambar di bawah 5.

Sign up to vote on this title
UsefulNot useful