sistem basis data - fti.uajm.ac.id basis data/modul 1.pdf · •db2, oracle, ms.access, mysql,...
Post on 03-Mar-2019
258 Views
Preview:
TRANSCRIPT
Apa yang akan dibahas?
• Pengertian SQL
• Penggolongan Statement SQL
• Aturan Gramatika SQL
• Struktur Dasar SQL
• Query Satu (1) Tabel
2
SQL
• SQL (Structured Query Language)…
• Bahasa standar yang digunakan untuk mengakses database relasional.
• Merupakan bahasa yang tidak prosedural atau terstruktur seperti C atau Pascal.
• Beberapa software database yang menggunakan SQL sebagai perintah untuk mengakses database..
• DB2, ORACLE , Ms.Access, MySQL, PostgreSQL, Sybase,dll.
3
Statement SQLTerbagi dalam dua kelompok, yaitu…
DDL (Data Definition Language) : untuk mendefinisikan struktur suatu data. Perintah-perintahnya…
CREATE (untuk membuat tabel)
ALTER (untuk mengubah struktur tabel)
DROP (untuk menghapus tabel)
DML (Data Manipulation Language) : untuk memanipulasi suatu tabel. Perintah-perintahnya…
SELECT (untuk query isi tabel)
INSERT (untuk memasukkan isi tabel)
UPDATE (untuk mengubah isi tabel)
DELETE (untuk menghapus isi tabel)4
Aturan Gramatika SQL
1. Semua pernyataan SQL ditutup dengan tanda titikkoma (;).
2. Dapat ditulis dalam satu baris atau dipisah-pisah dalam beberapa baris agar mudah dibaca.
3. Tidak bersifat case sensitive untuk penulisan perintah- perintah SQL, nama tabel dan nama kolom.
4. Ditulis menurut sintaks tertentu.
5. Dapat diberikan garis komentar untuk dokumentasi dan menjelaskan maksud pemrograman.
5
Struktur Dasar SQL• Implementasi SQL sangat bervariasi, bergantung pa
da vendor software. Akibatnya beberapa perintah SQL pada tiap software memiliki perbedaan pada sintaks penulisan.
• Struktur dasar SQL… .
SELECT A1 [, A2, … , An]
FROM t1 [, t2, … , tm]
[WHERE P]
6
Dimana:
A1, A2, … , An : daftar atribut (field) sebagai hasil query
T1, t2,… , tm : daftar tabel (relasi) yang akan ditelusuri
P : predikat/syarat kondisi query
Ket : tanda [ ] berarti bersifat pilihan; boleh digunakan boleh tidak
Struktur Dasar SQL
7
Query 1 Tabel
1. Menampilkan Semua Kolom Semua Baris
SELECT * FROM nama_tabel;
Untuk menampilkan kolom tertentu, maka nama kolom yang ingin ditampilkan ditulis setelah kata SE LECT
SELECT nama_kolom FROM nama_tabel;
J ika kolom yang ingin ditampilkan lebih dari satu,
maka penulisan antar nama kolom dipisahkan dengan koma.
SELECT nama_kolom1, nama_kolom2
FROM nama_tabel;9
Untuk menampilkan hanya sebuah baris tertentu yangmemenuhi syarat, maka kondisi dalam WHERE perludilibatkan kunci primer
SELECT *
FROM nama_tabel
WHERE nama_kolom_kunci_primer=‘syarat’;
Query 1 Tabel
10
2. Penggunaan Operator Relasional DalamKriteria
Operator relasional adalah operator yang digunakan untuk melakukan pembandingan antaradua buah nilai.
Daftar operator relasional
Operator Keterangan
= Sama dengan
> Lebih dari
< Kurang dari
> = Lebih dari atau sama dengan
< = Kurang dari atau sama dengan
< > Tidak sama dengan
Query 1 Tabel
11
Query 1 Tabel3. Penggunaan Operator Filter (Penyaringan)
Operator BETWEEN
Digunakan untuk menangani operasi jangkauandiantara dua kondisi.
SELECT nama_kolom FROM nama_tabel
WHERE nama_kolom BETWEEN ’syarat1’
AND ‘syarat2’;
Operator NOT BETWEEN
J ika ditambahkan NOT di depan BETWEEN maka diperoleh keadaan yang sebaliknya (tidak berada diantara dua kondisi).
SELECT nama_kolom FROM nama_tabel
WHERE nama_kolom NOT BETWEEN ’syarat1’
AND ‘syarat2’;
12
Query 1 TabelOperator IN
Berguna untuk melakukan pencocokan dengansalah satu yang ada pada suatu daftar nilai(dapat menggantikan operator OR)
SELECT nama_kolom FROM nama_tabel
WHERE nama_kolom
IN (‘nilai_1’,..,’nilai_n’);
Operator NOT IN
operator ini melakukan pencocokan SELAIN yangada dalam daftar nilai
SELECT nama_kolom FROM nama_tabel
WHERE nama_kolom
NOT IN (‘nilai_1’,..,’nilai_n’);
13
Query 1 Tabel
Operator LIKE
Untuk mencari data berdasarkan kriteria karaktertertentu.
Mis: nama mahasiswa yang namanya diawalidengan huruf “S”. LIKE digunakan dengan simbolwildcard (%)
Contoh pemakaian wildcardPola Keterangan
%a% Sama dengan apa saja yang mengandungkarakter “a” atau “A”
%a Sama dengan yang berakhiran “a” atau “A”
a% Sama dengan yang berawalan “a” atau “A”
14
Query 1 Tabel
Contoh: SELECT nama_mhs
FROM mhs
WHERE nama_mhs LIKE ‘Lu%’;
Output yang dihasilkan…
Semua nama mhs yang dua huruf awal namanya adalah ‘Lu’
15
Query 1 Tabel
Operator NOT LIKE
Untuk mencari data yang tidak sama dengankarakter yang diberikan.
Contoh:
SELECT nama_mhs
FROM mhs
WHERE nama_mhs NOT LIKE ‘Lu%’;
Output yang dihasilkan…
Semua nama mhs yang dua huruf awal namanyabukan ‘Lu’
16
Query 1 Tabel
Operator IS NULL
Untuk mencari data yang nilainya adalah NULL
Contoh:
SELECT nama_mhs
FROM mhs
WHERE asal_kota IS NULL;
Output yang dihasilkan…
Semua nama mhs dari tabel mhs yang data asal kotanya tidak disebutkan.
Bedakan dengan operator “=“ (tidak dapat membandingkan nilai NULL) 17
Query 1 Tabel
4. Penggunaan Kolom Alias
Untuk menampilkan nama kolom dengan nama laindapat menggunakan AS
Contoh:
SELECT nama_mhs AS nama, almt AS alamat
FROM mhs;
5. Penggunaan Distinct
digunakan jika ingin menampilkan hasil query yangbernilai sama sebanyak satu kali (unik)
18
Query 1 Tabel
Contoh: (tanpa menggunakan DISTINCT)
SELECT nama_mhs FROM mhs;
Output… .
Contoh: (menggunakan DISTINCT)
SELECT DISTINCT nama_mhs FROM mhs;
Output… .
nama_mhs
Ali
Ali
Budi
Anto
nama_mhs
Ali
Budi
Anto 19
Query 1 Tabel
6. Penggunaan Operator Gabung (Concat)
Nilai dari dua kolom dapat ditampilkan ke dalamsatu kolom dengan operator ||
Contoh:
SELECT nama_kolom1 || nama_kolom2
“nama_kolom_simpan_gabungan”
FROM nama_tabel;
20
Query 1 Tabel
7. Fungsi Agregat
Merupakan fungsi yang disediakan untuk menghasilkan sebuah nilai berdasarkan sejumlah data
Fungsi = suatu kumpulan instruksi yang menghasil-kan sebuah nilai jika dipanggil
Beberapa Daftar Fungsi Agregat
Fungsi Agregat Keterangan
AVG () Nilai rata-rata
AVG (DISTINCT… ) Nilai rata-rata untuk nilai yang unik
COUNT() Jumlah data yang tidak NULL
COUNT (DISTINCT… ) Jumlah data yang tidak NULL dan nilainya unik
MAX () Nilai terbesar
MIN () Nilai terkecil
SUM () Penjumlahan data 21
Latihan
1. Tampilkan employee_id, first_name, last_namedari tabel employees.
2. Tampilkan nama dan gaji dari pegawai yangberada di departemen 90.
3. Tampilkan nama pegawai dan id manager daripegawai yang memiliki gaji > 3000 danmanager_id adalah 124
4. Sama seperti no.1 tetapi nama adalah gabungandari first_name dan last_name serta beri judulkolom menjadi “Nama Pegawai”
5. Sama seperti no.2 tetapi gaji dalam 1 tahun.22
Latihan
6. Tampilkan nama pegawai yang dimulai denganhuruf ‘K’
7. Tampilkan job_id yang unik dari tabel employees.
8. Tampilkan nama pegawai yang tidak memilikimanager.
9. Tampilkan nama pegawai dan gaji dari pegawaiyang berada di departemen 10, 20, 50.
10.Tampilkan nama pegawai dan departemen_id daripegawai yang gajinya diantara 2000 hingga 5000.
23
top related