Upload
faizal-muhammad
View
65
Download
3
Embed Size (px)
DESCRIPTION
cb fcbnfcgngf
Citation preview
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_MhsFrom Mahasiswa
2. Menampilkan semua data dari tabel MahasiswaSelect *From Mahasiswa
3. Menampilkan Nama_Mhs dari tabel MahasiswaSelect Nama_MhsFrom Mahasiswa
Misalkan ada banyak mahasiswa dengan nama yang sama, maka hanya ada satu yang tampil, perintahnya adalah :
Select distinct Nama_MhsFrom Mahasiswa
Merubah atribut Nama_Mhs menjadi Nama_MahasiswaSelect NIM, Nama_Mhs as Nama_MahasiswaFrom 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_MhsFrom MahasiswaWhere 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 KodeFrom NilaiWhere 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_MhsFrom NahasiswaWhere Nama_Mhs like ‘R%’
Output :Mahasiswa
Nama_Mhs
Rina
Rudi
Menampilkan nama mahasiswa yang huruf keduanya adalah ‘a’
Select Nama_MhsFrom MahasiswaWhere 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,…..AnFrom r1,r2,….rnWhere 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 record Select count(*)From Mahasiswa
2. Menampilkan banyaknya mahasiswa angkatan 2003Select count(*)From MahasiswaWhere 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 NilaiWhere 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,
)
MEMBUAT BASIS DATA
CREATE DATABASE Nama_Database
MENGURUTKAN HASIL DENGAN ‘ORDER BY’
Misalkan :Mencari data mahasiswa yang berjenis kelamin
perempuan diurutkan berdasarkan NIM (urut turun)
SELECT *FROM MahasiswaWHERE 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
W3 School 5500
IBM 4500
W3 School 7100
Company
SELECT Company_Name, sum(amount)FROM CompanyORDER BY Company_Name
Output:W3 School 12600IBM 4500
Tampilkan amount dengan angka > 10000
SELECT Company_Name, sum(amount)
FROM Company
ORDER BY Company_Name
Having sum(amount) > 10000
Output :
Company_Name Amount
W3 School 12600