SQL
Basis Data
Apakah SQL ?
SQl singkatan dari Structured Query Language yang merupakan
bahasa komputer standar ANSI (American National Standards
Institute).
Dengan SQL kita dapat
o
Membuat basis data dan struktur tabel
o
Input, update, dan delete data dari tabel
o
Membuat query sederhana dan kompleks SQL
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.
1. CREATE
Digunakan untuk membuat database dan objek-objek di dalam
database
Membuat database
Create Database Namadatabase Contoh
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),telf varchar (15))
2. DROP
Digunakan untuk menghapus database dan
objek-objek di dalam database
Menghapus database dan tabel
Drop Database Namadatabase Contoh
Drop Database Kepegawaian
Drop Table Namatable Contoh
3. ALTER
Berfungsi untuk memodifikasi tabel
•
menambah kolom/field
•
menghapus kolom/field
•
membuat primary key atau foreign key
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
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)
SQL Data Manipulation Language
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’,…)
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
Select namafield,namafield from namatabel Contoh
Select nip,alamat from pegawai
Menampilkan sebagian field beserta
recordnya yang ada pada tabel
Select * from namatabel where namafield=‘nilaifield’
Contoh
Select * from pegawai where alamat=‘seutui’
Menampilkan baris record tertentu
berdasarkan pilihan field yang diberikan
Select distinct namafield from namatabel Contoh
Select distinct alamat from pegawai
Menampilkan satu field beserta recordnya yang
tidak akan berulang
Baris-baris pendua atau berulang (duplicate) tidak akan dipaparkan. Sekiranya kita memilih lebih dari satu atribut ketika menggunakan
Select distinct namafield1,namafield2 from namatabel Contoh
Select distinct alamat,status from pegawai
Menampilkan beberapa field beserta recordnya
yang sama tidak akan berulang
satu baris nip [03] tidak dipaparkan kerana berulang
Select namafield ungkapan aritmatik from namatabel Contoh
Select nama,gaji/2 from pegawai
Kita boleh menamakan semula suatu atribut (walaupun
telah mempunyai nama) dengan menggunakan AS
SELECT nama, gaji/2 AS gajisetengah FROM pegawai
•
Kita dapat membuat dan mengubah judul
field yang akan di tampilkan
Select namafield As namafieldbaru from namatabel Contoh
Select nama As namalengkap from pegawai
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
Menggunakan Simbol perbandingan <, >, =
untuk membuat pemilihan
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’
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
Select namafield from namatabel where namafield between nilai and nilai
Contoh
Select nama,gaji from pegawai where gaji between 850000 and 1000000
Jarak Nilai Sebagai Kriteria
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’)
Operator In
Pencocokan data kondisi pencarian dengan salah satu
data yang ada pada suatu daftar nilai
Select namafield from namatabel where namafield Like
‘%ekspresi%’
Contoh
Select * from pegawai where alamat Like ‘%andi%’
(menampilkan semua klolom dari tabel pegawai yang namanya mengandung kata andi)
Operator Like
-Untuk pencarian data
Fungsi Agregat
fungsi yang mengambil suatu kumpulan nilai-nilai sebagai
input dan mengembalikan satu nilai sebagai output
SQL menyediakan 5 fungsi
AVG
: Rata-rata
MIN
: Minimum
MAX
: Maksimum
SUM
: PenJumlahan isi record
COUNT
: menjumlahkan data
Select fungsi agregat SUM/AVG/MIN/MAX/COUNT (namafield) As namafieldbaru from nama table
Operasi MIN, MAX dan COUNT dapat dilakukan dalam atribut
yang mempunyai jenis data rentetan (string) seperti Char, Text,
dan Varchar
a) SUM
Penjumlahan dalam satu kolom
Select sum (tunjangan) As jlh_tunj from pegawai
Menampilkan jumlah keseluruhan dari tunjangan yang diberikan
b) Avg
menghitung nilai rata-rata dalam satu kolom
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)
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’
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)
Select namafield1,namafield2 from namatabel Group by field pengacu
Contoh
Select jeniskelamin,count (*) as jumlah from mahasiswa group by jeniskelamin
Hasil
Pengelompokan Record (Group by)
Pada kondisi tertentu, sekumpulan record dapat
dikelompokkan berdasarkan satu atau lebih field yang
terdapat pada sebuah tabel atau query.
JenisKelamin jumlah
Pengurutan (Order by)
Hasil dari query dapat di urutkan berdasarkan pada satu atau
lebih kolom.
Select namafield1 from namatabel where kriteria order by namafield
Select nim,nama where jeniskelamin=’perempuan’ order by nama
Select nim,nama where jeniskelamin=’perempuan’ order by nama asc
Select nim,nama where jeniskelamin=’perempuan’ order by nama desc
nim nama
2008 Ana 2009 Devi 2010 July 2011 Kiki
Select namafield1,… from namatabel Group by field pengacu
Having kondisi Contoh
Pernyataan Having
-menampilkan kelompok-kelompok data tertentu
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’
Menukar record dalam Tabel
Update namatabel set namafield=nilai Contoh
Update pegawai set gaji=gaji+12000
4. DELETE
Berfungsi untuk menghapus satu atau beberapa
record dalam suatu tabel.
Delete from namatabel where kondisi Contoh