Title: Achmad Yasid
1Achmad Yasid
- DML (Data Manipulation Language)
2Agenda
- Pendahuluan
- DML
- Klausa SELECT
- Latihan
31. Pendahuluan
- Penggolongan Statement SQL
- DDL (Data Definition Language)
- DML (Data Manipulation Language)
- DCL (Data Control Language)
41. Pendahuluan
- DDL (Data Definition Language) ? Mendefinisikan
struktur database, tabel, indexes, view - Contoh Create Index, Drop Table
5DDL (Data Definition Language)
61. Pendahuluan
- DML (Data Manipulation Language) ? Manipulasi
data misal select, insert, update, delete data.
7DML (Data Manipulation Language)
81. Pendahuluan
- DCL (Data Control Language) ? Berkaitan dengan
keamanan data dan pemberian privileges. - Contoh Grant, Revoke statement
9DCL (Data Control Language)
10Statement SELECT
11Pernyataan SELECT
12Pernyataan SELECT
- Berguna untuk menampilkan isi tabel
- SELECT NAMA,ALAMAT FROM MAHASISWA
NRP Nama Alamat Telp
090411110001 Ali JL Nangka Perumnas Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan 031-3013765
Nama Alamat
Ali JL Nangka Perumnas Kamal
Budi JL Telang Indah 05 Telang
Diva JL Pahlawan 7 Bangkalan
Topan Jl Pondok Indah 1 Surabaya
Mega Jl A. Yani 05 Surabaya
Sely Jl Merdeka 17 Bangkalan
13Pernyataan SELECT
- Untuk menampilkan semua kolom dapat menggunakan
simbol sesudah kata sELECT - SELECT
- FROM MAHASISWA
NRP Nama Alamat Telp
090411110001 Ali JL Nangka Perumnas Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan 031-3013765
14Pernyataan SELECT
- Untuk menampilkan baris-baris tertentu, dapat
menggunakan klausa WHERE - SELECT
- FROM MAHASISWA
- WHERE NAMA Ali
- Merupakan perintah untuk menampilkan baris dimana
nama mahasiswa adalah Ali
NRP Nama Alamat Telp
090411110001 Ali JL Nangka Perumnas Kamal 031-3012456
15Pernyataan SELECT
- Beberapa operator perbandingan yang dapat
digunakan pada klausa WHERE ADALAH - Sama dengan
- gt Lebih dari
- lt Kurang dari
- ltgt Tidak sama dengan
- gt Lebih dari atau sama dengan
- lt Kurang dari atau sama dengan
16Mendalami Pernyataan SELECT
17Mendalami Pernyataan SELECT (Klausa ORDER BY)
- Mengurutkan berdasarkan suatu kolom dengan
menggunakan klausa ORDER BY - SELECT FROM MAHASISWA ORDER BY NAMA
NRP Nama Alamat Telp
090411110001 Ali JL Nangka Perumnas Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya 031-3013765
18Mendalami Pernyataan SELECT (Klausa GROUP BY)
- Melakukan pengelompokan dengan menggunakan
klausa GROUP BY - SELECT KOTA FROM MAHASISWA GROUP BY KOTA
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan Bangkalan 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
Kota
Bangkalan
Kamal
Surabaya
Telang
19Mendalami Pernyataan SELECT (Klausa HAVING)
- Klausa HAVING ? digunakan untuk melengkapi
klausa GROUP BY - Kegunaannya adalah menentukan kondisi bagi GROUP
BY - SELECT KOTA FROM MAHASISWA
- GROUP BY KOTA HAVING COUNT(KOTA) gt 1
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan Bangkalan 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
Kota
Bangkalan
Surabaya
20Mendalami Pernyataan SELECT (Fungsi AVG, COUNT,
MAX, MIN dan SUM)
Fungsi Keterangan
AVG Menghitung rata-rata
COUNT Menghitung cacah
MAX Menghitung nilai terbesar
MIN Menghitung nilai terkecil
SUM Memperoleh jumlah data
- Menghitung jumlah mahasiswa perkota
- SELECT KOTA, COUNT(KOTA) FROM MAHASISWA
- GROUP BY KOTA
Kota Count(kota)
Bangkalan 2
Kamal 1
Surabaya 2
Telang 1
21Mendalami Pernyataan SELECT (Operator AND, OR,
NOT, BETWEEN-AND, IN LIKE)
- Operator AND
- SELECT FROM PLOTMATAKULIAH
- WHERE SEMESTER Ganjil AND DOSENPENGAMPUKautsa
r
PlotMataKuliah KodePlot KodeMK Smester TahunAkademik DosenPengampu
01001 TKC01 Ganjil 2009-2010 Kautsar
01002 TKC03 Ganjil 2009-2010 Yasid
02001 TKC02 Genap 2009-2010 Kautsar
PlotMataKuliah KodePlot KodeMK Smester TahunAkademik DosenPengampu
01001 TKC01 Ganjil 2009-2010 Kautsar
22Mendalami Pernyataan SELECT (Operator AND, OR,
NOT, BETWEEN-AND, IN LIKE)
- Operator OR
- SELECT FROM MAHASISWA
- WHERE KOTA Kamal OR KotaTelang
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan Bangkalan 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
23Mendalami Pernyataan SELECT (Operator AND, OR,
NOT, BETWEEN-AND, IN LIKE)
- Operator NOT
- SELECT FROM MAHASISWA
- WHERE NOT KOTA Kamal
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan Bangkalan 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
NRP Nama Alamat Kota Telp
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan Bangkalan 031-3013765
090411110005 Mega Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan Bangkalan 031-3013765
090411110004 Topan Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
24Mendalami Pernyataan SELECT (Operator AND, OR,
NOT, BETWEEN-AND, IN LIKE)
- Operator BETWEEN-AND digunakan untuk operasi
jangkauan. Misalkan kita ingin menampilkan range
nilai angka dari 60-75 - SELECT FROM KHS
- WHERE NILAI_ANGKA BETWEEN 60 AND 75
KHS NRP KodePlot Nilai_Angka Nilai
090411110001 01001 80 B
090411110001 01002 90 A
090411110002 01001 65 C
090411110003 01001 75 B
KHS NRP KodePlot Nilai_Angka Nilai
090411110002 01001 65 C
090411110003 01001 75 B
25Mendalami Pernyataan SELECT (Operator AND, OR,
NOT, BETWEEN-AND, IN LIKE)
- Operator IN digunakan untuk menyatakan keadaan
salah satu diantara misalkan kita ingin
menampilkan nilai huruf A, B dan B - SELECT FROM KHS
- WHERE NILAI IN (A, B, B)
KHS NRP KodePlot Nilai_Angka Nilai
090411110001 01001 80 B
090411110001 01002 90 A
090411110002 01001 65 C
090411110003 01001 75 B
KHS NRP KodePlot Nilai_Angka Nilai
090411110001 01001 80 B
090411110001 01002 90 A
090411110003 01001 75 B
26Mendalami Pernyataan SELECT (Operator AND, OR,
NOT, BETWEEN-AND, IN LIKE)
- Operator LIKE digunakan untuk pencocokan
- SELECT FROM MAHASISWA
- WHERE NAMA LIKE A
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan Bangkalan 031-3013765
090411110005 Abdi Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan Bangkalan 031-3013765
090411110004 Abu Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110005 Abdi Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110004 Abu Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
27SUBQUERY
- Adalah query dalam query. Hasil suatu query akan
dijadikan bagian query diatasnya - Contoh
NRP Nama Alamat Kota Telp
090411110001 Ali JL Nangka Perumnas Kamal Kamal 031-3012456
090411110002 Budi JL Telang Indah 05 Telang Telang 031-3011159
090411110003 Diva JL Pahlawan 7 Bangkalan Bangkalan 031-3013765
090411110005 Abdi Jl A. Yani 05 Surabaya Surabaya 031-3013765
090411110006 Sely Jl Merdeka 17 Bangkalan Bangkalan 031-3013765
090411110004 Abu Jl Pondok Indah 1 Surabaya Surabaya 031-3013765
NRP KodePlot Nilai_Angka Nilai
090411110001 01001 80 B
090411110001 01002 90 A
090411110002 01001 65 C
090411110003 01001 75 B
28SUBQUERY
- SELECT NRP,NAMA FROM MAHASISWA
- WHERE NRP IN
- (SELECT NRP FROM KHS)
- Pada contoh diatas
- SELECT NRP FROM KHS
- Adalah subquery, Sedangkan,
- SELECT NRP,NAMA FROM MAHASISWA
- Adalah sebagai query, hasil dari subquery akan
digunakan oleh query
NRP Nama
090411110001 Ali
090411110002 Budi
090411110003 Diva
29SUBQUERY (Operator EXISTS)
- Operator Exists menghasilkan True jika subquery
menghasilkan baris yang sesuai dengan yang
dihasilkan query - SELECT NRP,NAMA FROM MAHASISWA
- WHERE NRP IN
- (SELECT NRP FROM KHS)
- Dapat ditulis menjadi
- SELECT NRP,NAMA FROM MAHASISWA
- WHERE EXISTS
- (SELECT FROM KHS WHERE MAHASISWA.NRP
KHS.NRP)
30