iv - sql.pdf
TRANSCRIPT
MATERI 4:
STRUKTUR QUERY LANGUAGE
(SQL)
OLEH:
NOVI YANTI, ST, M.KOM
FAKULTAS SAINS DAN TEKNOLOGI
UIN SUSKA RIAU
PENDAHULUAN
SQL merupakan bahasa basis data
relasional standar. Terdapat macam-macam
versi SQL. Versi aslinya pertama kali
dikembangkan oleh IBM San Jose
Research Laboratory.
BAHASA SQL
• Data Definition Language (DDL)
DDL memberikan perintah untuk mendefinisikan skema relasi, penghapusan relasi, membuat indeks dan modifikasi skema relasi.
• Data-Manipulation Language (DML)
DML merupakan bahasa Query yang berdasarkan pada aljabar relasi dan kalkulus relasi tuple. Termasuk didalamnya adalah perintah untuk penyisipan, penghapusan dan modifikasi.
STRUKTUR DASAR SQL
1. KLAUSA SELECT
berhubungan dengan operasi proyeksi
dari aljabar relasional. Operasi ini
digunakan untuk mendaftar semua
atribut yang diinginkan sebagai hasil
suatu Query.
Contoh :
NIM# Nama_Mhs Alamat Tmp_Lahir Tgl_Lahir J_Kelamin
1830 Dewi Jl. Garuda Pekanbaru 20/Des/1983 Perempuan
1845 Made Jl. Mutiara Denpasar 28/Okt/1982 Laki-laki
1870 Rina Jl. Gagak Pekanbaru 27/Sep/1981 Perempuan
1890 Rudi Jl. Beringin Pekanbaru 01/Okt/1980 Laki-laki
Mahasiswa
1. Menampilkan NIM & Nama_Mhs dari tabel MahasiswaSelect NIM, Nama_Mhs
From Mahasiswa
2. Menampilkan semua data dari tabel MahasiswaSelect *
From Mahasiswa
3. Menampilkan Nama_Mhs dari tabel MahasiswaSelect Nama_Mhs
From Mahasiswa
Misalkan ada banyak mahasiswa dengan nama yang
sama, maka hanya ada satu yang tampil, perintahnya
adalah :Select distinct Nama_Mhs
From Mahasiswa
Merubah atribut Nama_Mhs menjadi Nama_MahasiswaSelect NIM, Nama_Mhs as Nama_Mahasiswa
From Mahasiswa
2. KLAUSA WHERE
berhubungan dengan operasi Cartesian-
product dari aljabar relasional. Operasi ini
mencatat semua relasi yang di”scan” dalam
evaluasi suatu Query.
NIM# Nama_Mhs J_Kelamin Tmp_Lahir
1830 Dewi Perempuan Pekanbaru
1845 Made Laki-laki Denpasar
1870 Rina Perempuan Pekanbaru
1890 Rudi Laki-laki Pekanbaru
Mahasiswa
Menampilkan NIM & Nama Mahasiswa berdasarkan
tempat lahir = ’Pekanbaru’Select NIM, Nama_Mhs
From Mahasiswa
Where Tmp_Lahir=’Pekanbaru’
Output :
NIM Nama_Mhs
1830 Dewi
1870 Rina
1890 Rudi
Mahasiswa
Klausa where dapat dikombinasikan dengan
operator :
1. <, >, =, <>, <=, >=, AND, OR, NOT, |=
2. Between (diantara)
3. Like berdasarkan pola : % dan _ (underline)
Contoh
NIM Kode_Matkul Nilai
1830 TIF-001 70
1845 TIF-002 80
1870 TIF-001 50
Nilai
Tampilkan NIM, Kode_Matkul as Kode dai nilai 65 ≤ nilai ≤ 80Select NIM, Kode_Matkul as Kode
From Nilai
Where Nilai between 65 and 80
Output :
NIM Kode
1830 TIF-001
1845 TIF-002
Nilai
Tampilkan Nama_Mhs yang diawali dengan huruf ‘R’Select Nama_Mhs
From Nahasiswa
Where Nama_Mhs like ‘R%’
Output :Mahasiswa
Nama_Mhs
Rina
Rudi
Menampilkan nama mahasiswa yang huruf keduanya adalah ‘a’
Select Nama_Mhs
From Mahasiswa
Where Nama_Mhs Like ‘_a%’
3. KLAUSA FROM
berhubungan dengan operasi predikat
seleksi dari aljabar relasional. Operasi ini terdiri
dari sebuah predikat yang menyangkut
atributatribut dari relasi yang muncul dalam
klausa from.
Sebuah Query SQL biasanya mempunyai bentuk :Select A1,A2,…..An
From r1,r2,….rn
Where P
FUNGSI FUNGSI AGREGASI
•Average : avg menghitung nilai rata-rata
•Minimum : min mencari nilai minimum
•Maximum : max mencari nilai maksimum
•Sum : sum menghitung nilai penjumlahan
•Count : count menghitung jumlah data
Fungsi-fungsi di atas telah tersedia. Input untuk avg dan sum haruslah bertipe numerik.
Contoh
1. Menampilkan banyak jumlah recordSelect count(*)
From Mahasiswa
2. Menampilkan banyaknya mahasiswa angkatan 2003Select count(*)
From Mahasiswa
Where Angkatan like ‘2003%’
3 Menampilkan total SKS untuk kuliah di semester 2 :Select sum(sks)
From Mahasiswa
Where semester=2
4. Menampilkan rata-rata sks untuk semua mata kuliah :Select avg(sks)
From Kuliah
5. Menampilkan indeks nilai terbesar yang diperoleh mahasiswa untuk mata kuliah dengan kode kuliah ‘IF-110’ :
Select max(indeks_nilai)
From Nilai
Where Kode_Kul=’IF-110’
6. Menampilkan tanggal lahir paling tua yang ada pada tabel mahasiswa :
Select min(tgl_lahir)
From Mahasiswa
BAHASA DEFINISI DATA
(DATA – DEFINITION LANGUAGE)
DDL SQL memungkinkan dilakukannya spesifikasi
tidak hanya pada himpunan relasi tetapi juga
informasi untuk setiap relasi, yang meliputi :
– Skema setiap relasi
– Domain nilai setiap atribut relasi
– Konstrain integritas
– Himpunan indeks untuk setiap relasi
– Sekuriti dan autorisasi setiap relasi
– Struktur penyimpanan secara fisik untuk setiap relasi
dalam disk.
MEMBUAT TABEL
CREATE TABLE nama_tabel
(
atribut1 type data1;
atribut2 type data2;
...
)
Contoh :CREATE TABLE Mahasiswa
(
NIM char(4),
Nama_Mhs varc har,
Alamat varchar,
)
MENGURUTKAN HASIL DENGAN
‘ORDER BY’
Misalkan :
Mencari data mahasiswa yang berjenis kelamin perempuan diurutkan berdasarkan NIM (urut turun)
SELECT *
FROM Mahasiswa
WHERE Mahasiswa, Jenis_Kelamin = ‘Perempuan’
ORDER BY NIM desc
............ asc
PENGELOMPOKKAN DENGAN
‘ORDER BY’
Mencari jumlah mahasiswa berdasarkan
kelompok jenis kelamin
SELECT COUNT(NIM)
FROM Mahasiswa
ORDER BY Mahasiswa, Jenis_Kelamin
Contoh :
Company_Name Amount
W3School 5500
IBM 4500
W3School 7100
Company
SELECT Company_Name,
sum(amount)
FROM Company
ORDER BY Company_Name
Output:W3 School 12600
IBM 4500