Sistem Basis Data
Pertemuan 5
SQL Query Lanjutan
Tujuan Pertemuan
•
Mahasiswa akan mampu menggunakan
statement select (query) untuk
mendapatkan data/informasi dari suatu
database.
•
Mahasiswa akan mampu melakukan query
kombinasi attributes dengan ekspresi
(integrasi informasi).
•
Mahasiswa akan mampu melakukan filtrasi
data query dengan memanfaatkan
operator pada where clause
Query dengan SQL Language
#Select-From-WHERE Statements
SELECT
<
nama_field_yg diinginkan
>
FROM
<
nama_tabel
>
WHERE
<kondisi>
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 3
Penambahan WHERE bertujuan untuk
menampilkan data dengan filter
Query dengan SQL Language
#Contoh Query SQL dengan WHERE
•
SELECT * FROM mhs;
•
SELECT nama, prodi FROM mhs WHERE jnk=0;
•
SELECT nama, prodi FROM mhs WHERE prodi=‘DKV’;
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 4
nim nama prodi jnk thn 201208200
3 Joko TIF 1 2012 201408100
1 A. Hanum SIF 0 2014 201408100
2 Tyo SIF 1 2014 201408100
3 Alya SIF 0 2014 201408100
4 Tika SIF 0 2014 201408100
5 Yahdi SIF 1 2014 201408100
6 Rendy SIF 1 2014 201408100
7 Rima SIF 0 2014 201408100
8 Budi SIF 1 2014 201408100
9 RANI SIF 0 2014 201411100
1 Jim Bobo DKV 1 2014 201411100
2 Lanang DKV 1 2014 201511101
0 Prita DKV 0 2015 nama prodi
A. Hanum SIF Alya SIF Tika SIF Rima SIF RANI SIF Prita DKV
LATIHAN QUERY SELECT dengan
WHERE Clause
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 5
kdmk namamk sks prodi DKV10
2 Rupa Dasar 6 DKV
DKV10
3 Typhography 4 DKV KOM10
1 Pengantar Komunikasi 2 KOM KOM10
2 Komunikasi Sosial 4 KOM KOM10
3 Komunikasi Pemasaran 4 KOM LSE101 Bahasa Indonesia 1 (Kecakapan Berpikir) 2 LSE LSE102 Bahasa Indonesia 2 (Teknik Penyampaian Gagasan) 2 LSE
LSE111 Perkembangan Teknologi Informasi dan
Komunikasi 2 LSE MGT20
1 Manajemen 3 SIF
SIF101 Pengantar Sistem Informasi 2 SIF SIF102 Struktur Data 4 SIF SIF103 Fondasi Algoritma dan Konsep Pemrograman 4 SIF SIF104 Bahasa Pemrograman 2 SIF SIF201 Sistem Basis Data 3 SIF TIF203 Aljabar Linear 3 TIF SIF204 Analisis Proses Bisnis 3 SIF SIF205 Mobile Technology 2 SIF SIF206 Script Programming 4 SIF TIF101 Pemrorgaman dan Algoritma 3 TIF TIF102 Pengantar Sistem Dijital 3 TIF TIF103 Arsitektur dan Organisasi Komputer 3 TIF
1.Buat tabel matkul,
dengan atribut
(field):
Kdmk
char(6),
namamk
varchar(50), sks
tinyint, prodi
char(3)
2. Buat query select
untuk menampilkan
a. namamk yang
sksnya lebih
kecil dari 4
b. namamk dari
prodi SIF
Query dengan SQL Language
#Select-From-HAVING Statements
SELECT
<
nama_field_yg diinginkan
>
FROM
<
nama_tabel
>
GROUP BY
<nama_field_yg_ingin_dikelompokkan>
HAVING
<
kondisi
>
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 6
Penambahan HAVING bertujuan untuk
menampilkan data dengan kriteria/filter
tertentu untuk sekelompok data hasil
Query dengan SQL Language
#Contoh Query SQL dengan HAVING
•
SELECT kdmk, sks, prodi FROM matkul;
•
SELECT prodi, count(*) FROM matkul GROUP By prodi;
•
SELECT prodi, count(*) FROM matkul GROUP By prodi
HAVING count(*) < 4
;
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 7
kdmk sks prodi DKV10
2 6 DKV DKV10
3 4 DKV KOM10
1 2 KOM KOM10
2 4 KOM KOM10
3 4 KOM LSE101 2 LSE LSE102 2 LSE LSE111 2 LSE MGT20
1 3 SIF SIF101 2 SIF SIF102 4 SIF SIF103 4 SIF SIF104 2 SIF SIF201 3 SIF TIF203 3 TIF SIF204 3 SIF SIF205 2 SIF SIF206 4 SIF TIF101 3 TIF TIF102 3 TIF TIF103 3 TIF
Query dengan SQL Language
#Query dari Dua Tabel (atau Lebih)
Untuk menampilkan record dari dua
tabel atau lebih,
sebelum nama field
harus dituliskan nama tabelnya
dan
gunakan
WHERE Clause untuk
memastikan relasi
dari tabel-tabel
tersebut
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 8
Contoh Penulisan:
SELECT
tbl1
.nama_field1,
tbl2
.nama_field2,
tbl2
.nama_field2
FROM
tbl1, tbl2
Query dengan SQL Language
#Contoh Query SQL dengan DISTINCT
•
SELECT * FROM mhs;
•
SELECT * FROM nilai;
•
SELECT mhs.nama, grade FROM mhs, nilai
WHERE nilai.nim=mhs.nim;
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 9
nim nama prodi jnk thn 201208200
3 Joko TIF 1 2012 201408100
1 A. Hanum SIF 0 2014 201408100
2 Tyo SIF 1 2014 201408100
3 Alya SIF 0 2014 201408100
4 Tika SIF 0 2014 201408100
5 Yahdi SIF 1 2014 201408100
6 Rendy SIF 1 2014 201408100
7 Rima SIF 0 2014 201408100
8 Budi SIF 1 2014 201408100
9 RANI SIF 0 2014 201411100
1 Jim Bobo DKV 1 2014 201411100
2 Lanang DKV 1 2014 201511101
0 Prita DKV 0 2015
nim kdmk
grad e 201208200
3 TIF101 B 201208200
3 TIF102 B 201208200
3 TIF103 C 201411100
2 TIF101 C 201408100
3 SIF205 A 201408100
1 SIF205 A 201408100
4 SIF201 A nim kdmk
LATIHAN QUERY SELECT dengan
WHERE Clause
AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 10
1. Buat tabel nilai, dengan atribut (field):
nim char(10), kdmk char(6), grade char(1) . Dengan Foreign Key:
Atribut nim, terhubung dengan nim pada tabel mhs, Atribut kdmk, terhubung dengan kdmk pada tabel matkul.
Catatan:
sebelumnya kita sudah membuat tabel mhs dengan nim sebagai primary key, dan tabel matkul dengan kdmk sebagai primary key.
Berikut adalah perintah untuk membuat tabel nilai tersebut:
CREATE TABLE nilai_temp ( nim char(10), kdmk char(6), grade char(1), FOREIGN KEY (nim)
REFERENCES mhs(nim), FOREIGN KEY (kdmk)
REFERENCES matkul(kdmk));
2. Isi data untuk tabel nilai tersebut !
Perhatian!!!
Pastikan nim dan kdmk yang anda isi pada tabel nilai sudah ada pada tabel mhs dan matkul
nim kdmk grade 20120820
03 TIF101 B 20120820
03 TIF102 B 20120820
03 TIF103 C 20141110
02 TIF101 C 20140810
03 SIF205 A 20140810
01 SIF205 A 20140810
04 SIF201 A Contoh tabel nilai:
3. Buat query sehingga
menampilkan
See You Next Session
•
Thank’s