Transcript SQL

MEETING 9
Febriyanno Suryana, S.Kom, MM
[email protected]
www.suryagsc.wordpress.com
0819 7753 7981
FEKON - 2011
Apakah SQL ?
•SQL singkatan dari Structured Query Language yang
merupakan bahasa komputer standar ANSI (American
National Standards Institute). Dengan SQL kita dapat :
– Membuat basis data dan struktur tabel
– Input, update, dan delete data dari tabel
– Membuat query sederhana dan kompleks SQL
•SQL tersedia dalam banyak versi Ms.Access, DB2, MS
SQL server, Oracle, MySQL, Sybase,dll.
2
SQL Data Definition Language
Berfungsi untuk membuat atau menghapus
database dan mendefinisikan objek-objek
(table, index, view, stored procedure, trigger)
yang ada di dalam database.
3
1. CREATE
• Digunakan untuk membuat database dan objekobjek di dalam database
Membuat database
Create Database Namadatabase
Contoh
Create Database Kepegawaian
4
Mengaktifkan database yang telah dibuat
Use Namadatabase
Contoh
Use Kepegawaian
Membuat Table
Create Table NamaTable (Nama_field/kolom typedata
(size), …)
Contoh
Create Table pegawai (NIP char (8) not null primary key,
Nama varchar (25), Alamat varchar (50),telp varchar (15))
5
2. DROP
• Digunakan untuk menghapus database dan
objek-objek di dalam database
Menghapus database dan tabel
Drop Database Namadatabase
Drop Table Namatable
Contoh
Contoh
Drop Database Kepegawaian
Drop Table pegawai
6
3. ALTER
• Berfungsi untuk memodifikasi tabel
- menambah kolom/field
- menghapus kolom/field
- membuat primary key atau foreign key
7
Menambah Kolom/Field
Alter Table NamaTable add Namafield typedata (size)
Contoh
Alter Table Pegawai add status varchar (5)
Merubah Kolom/Field
Alter Table NamaTable Alter Column Namafield typedata (size)
Contoh
Alter Table Pegawai Alter Column status varchar (10)
8
Menghapus Kolom/Field
Alter Table NamaTable drop Namafield
Contoh
Alter Table Pegawai drop status
Menambah Primary Key
Alter Table NamaTable add primary key (namafield)
Contoh
Alter Table departement add primary key (kd_depart)
9
SQL Data Manipulation Language
Berfungsi untuk memanipulasi data
(menampilkan, menambahkan, dan
menghapus data)
10
1. INSERT
Digunakan untuk Menambah Data dalam
satu record
Insert Into NamaTable (namafield1,namafield2,…)
Values (‘nilaifield1’,’nilaifield2’,…)
Contoh
Insert Into pegawai (nip,nama) values (’01’,’andika’)
Atau bisa juga bila kita mengingat seluruh bentuk field dalam tabel :
Insert Into namatable values (‘nilaifield1’,’nilaifield2’,…)
11
2. SELECT
Berfungsi untuk Menampilkan record data yang
ada dalam table
Select * from namatabel
Contoh
Select * from pegawai
(menampilkan data di semua field yang ada dalam table pegawai)
Simbol * bermaksud ‘all’ atau ‘semua’, dan digunakan untuk mewakili
semua atribut dalam satu tabel
12
Menampilkan sebagian field beserta
recordnya yang ada pada tabel
Select namafield,namafield from namatabel
Contoh
Select nip,alamat from pegawai
Menampilkan baris record tertentu
berdasarkan pilihan field yang diberikan
Select * from namatabel where namafield=‘nilaifield’
Contoh
Select * from pegawai where alamat=‘lubeg’
13
Menampilkan satu field beserta recordnya yang
tidak akan berulang
Select distinct namafield from namatabel
Contoh
Select distinct alamat from pegawai
Baris-baris pendua atau berulang (duplicate) tidak akan dipaparkan.
Sekiranya kita memilih lebih dari satu atribut ketika menggunakan
DISTINCT, hasilnya adalah gabungan atribut-atribut yang unik
14
Menampilkan beberapa field beserta recordnya
yang sama tidak akan berulang
Select distinct namafield1,namafield2 from namatabel
Contoh
Select distinct alamat,status from pegawai
satu baris nip [03] tidak dipaparkan karena berulang
15
Menggunakan Ungkapan Aritmatik dalam
Pernyataan +, -, /, *
Select namafield ungkapan aritmatik from namatabel
Contoh
Select nama,gaji/2 from pegawai
16
• Kita boleh menamakan semula suatu atribut
(walaupun telah mempunyai nama) dengan
menggunakan AS
SELECT nama, gaji/2 AS gajisetengah
FROM pegawai
17
• Kita dapat membuat dan mengubah judul
field yang akan di tampilkan
Select namafield As namafieldbaru from namatabel
Contoh
Select nama As namalengkap from pegawai
menampilkan nama dari tabel pegawai dimana field nama
pada hasil SQL di ubah menjadi namalengkap
18
Menggunakan Simbol perbandingan <, >, =
untuk membuat pemilihan
Select namafield from namatabel where simbol perbandingan
Contoh
Select nama,gaji from pegawai where gaji > 1000000
Select nama,gaji from pegawai where gaji < 900000
Select nama,gaji from pegawai where gaji = 900000
19
Menggunakan operator Boolean Seperti And
OR dan Not
Select namafield1,namafield2 from namatabel where namafield1
operatorboolean namafield2
Contoh
Select alamat,gaji from pegawai where alamat=‘seutui’ and gaji >
1000000
Select alamat,gaji from pegawai where alamat=‘prada’ Or gaji >
900000
Select * from pegawai where alamat=‘seutui’ Or alamat=‘prada’
Select * from pegawai where Not alamat=‘seutui’
20
Operator Logik Boolean
• Apabila AND digunakan, disemua syarat
sebelum dan setelah AND harus benar untuk
suatu tuple dipilih
• Apabila OR digunakan, hanya salah satu syarat
sebelum atau sesudah OR harus benar ataupun
keduanya benar untuk suatu tuple dipilih
• Apabila NOT digunakan, yang bukan syarat yang
akan di tampilkan
21
Jarak Nilai Sebagai Kriteria
Kita boleh mengunakan pernyataan BETWEEN
Select namafield from namatabel where namafield between
nilai and nilai
Contoh
Select nama,gaji from pegawai where gaji between 850000
and 1000000
22
Operator In
Pencocokan data kondisi pencarian dengan salah satu
data yang ada pada suatu daftar nilai
Select namafield from namatabel where namafield In
(nilaifield1,nilaifield2)
Contoh
Select * from pegawai where alamat In (‘seutui’,’prada’)
Select nama,alamat from pegawai where alamat In
(‘seutui’,’prada’)
23
Operator Like
-Untuk pencarian data
-Bekerja pada type data char, varchar, text
Select namafield from namatabel where namafield Like
‘%ekspresi%’
Contoh
Select * from pegawai where alamat Like ‘%andi%’
(menampilkan semua kolom dari tabel pegawai yang
namanya mengandung kata andi)
24
Fungsi Agregat
fungsi yang mengambil suatu kumpulan nilai-nilai sebagai
input dan mengembalikan satu nilai sebagai output
Select fungsi agregat SUM/AVG/MIN/MAX/COUNT (namafield)
As namafieldbaru from nama table
SQL menyediakan 5 fungsi
AVG : Rata-rata
MIN : Minimum
MAX : Maksimum
SUM : PenJumlahan isi record
COUNT : menjumlahkan data
25
a) SUM  Penjumlahan dalam satu kolom
Select sum (tunjangan) As jlh_tunj from pegawai
Menampilkan jumlah keseluruhan dari tunjangan yang diberikan
26
b) Avg  menghitung nilai rata-rata dalam satu kolom
Select Avg (gaji) As rata_gaji from pegawai
27
c) Min  Untuk mencari atau menampilkan
nilai terendah
Select min (gaji) As Gaji_min from pegawai
(Menampilkan gaji terendah dari tabel pegawai)
Select min (gaji) As Gaji_min from pegawai where
status=‘nikah’
(Menampilkan gaji terendah dari tabel pegawai yang statusnya
telah menikah)
28
d) MAX  Untuk mencari atau menentukan nilai tinggi
Select max (gaji) As Gaji_max from pegawai
(Menampilkan gaji terendah dari tabel pegawai)
Select max (gaji) As Gaji_max from pegawai where
status=‘nikah’
(Menampilkan gaji terendah dari tabel pegawai yang statusnya
telah menikah)
29
e) COUNT  Menghitung jumlah record yang sesuai
dengan kondisi
Select count (nip) As jlh_peg from pegawai
(Menampilkan jumlah seluruh pegawai dari tabel pegawai)
Select count (nip) As jlh_peg from pegawai where
status=‘nikah’
(Menampilkan jumlah seluruh pegawai dari tabel pegawai yang
statusnya telah menikah)
30
Pengelompokan Record (Group by)
Pada kondisi tertentu, sekumpulan record dapat
dikelompokkan berdasarkan satu atau lebih field yang
terdapat pada sebuah tabel atau query.
Select namafield1,namafield2 from namatabel Group by field
pengacu
Contoh
Select jeniskelamin,count (*) as jumlah from mahasiswa
group by jeniskelamin
JenisKelamin jumlah
Hasil
Laki-Laki
5
Perempuan
4
31
Pengurutan (Order by)
• Hasil dari query dapat di urutkan
berdasarkan pada satu atau lebih kolom.
Select namafield1 from namatabel where kriteria
order by namafield
nim
nama
2008
Ana
2009
Devi
Select nim,nama where jeniskelamin=’perempuan’
2010
order by nama
2011
July
Kiki
Select nim,nama where jeniskelamin=’perempuan’
order by nama asc
Select nim,nama where jeniskelamin=’perempuan’
order by nama desc
32
Pernyataan Having
-menampilkan kelompok-kelompok data tertentu
-having berbeda dengan where, pernyataan where digunakan
untuk memberikan criteria sebelum pengelompokan dan
melakukan penyaringan baris. Sedangkan having digunakan
untuk memberikan criteria setelah pengelompokan dilakukan,
menyaring kelompok, dan menentukan kondisi bagi Group By
Select namafield1,… from namatabel Group by field pengacu
Having kondisi
Contoh
Select barang, count (jumlah) As totalfaktur from Torder Group by
idbarang having idbarang=‘A009’
33
3. UPDATE
Berfungsi untuk mengubah satu atau lebih data
yang terdapat pada satu atau lebih kolom tabel
Update namatabel set namafield=nilai where kondisi
Contoh
Update pegawai set alamat=‘pango’ where nip=’01’
34
Menukar record dalam Tabel
Update namatabel set namafield=nilai
Contoh
Update pegawai set gaji=gaji+12000
pernyataan diatas akan menambah ‘gaji’ yang awal dengan
+12000 dalam tabel pegawai
35
4. DELETE
Berfungsi untuk menghapus satu atau beberapa
record dalam suatu tabel.
Delete from namatabel where kondisi
Contoh
Delete from pegawai where nip=’01’
36
End Session
www. suryagsc.wordpress.com