Anda di halaman 1dari 34

STRUCTURE QUERY LANGUAGE

(SQL)

Diterapkan pada :
Informix, AS400
Dbase IV, Access, Visual Basic
Jenis SQL
1. Interactive
lansung dapat dioperasikan
2. Embedded
disisipkan ke dalam sebuah program

Pengelompokan Statement SQL

1. Data Definition Language ( DDL )

DATABASE
CREATE TABLE DROP
INDEX
VIEW

ALTER TABLE

2. Data Manipulation Language (DML)


INSERT, SELECT, UPDATE, DELETE
3. Data Access
GRANT, REVOKE
4. Data integrity
RECOVER TABLE
5. Auxiliary
UNLOAD, LOAD, RENAME COLUMN

Kasus
Data Definition Language (DDL)
Pembuatan Database
Sintaks : CREATE DATABASE nama_db;

Contoh : Buat database dengan


nama latihan
CREATE DATABASE latihan;

Pembuatan Tabel

Sintaks : CREATE TABLE nama_tabel


(nama_kolom1 jenis_kolom1,
nama_kolom2 jenis _kolom2, ... );

Contoh :
Struktur database
MHS (NPM char(8), NAMA char(25),ALAMAT char(30))
MKUL (KDMK char(5), MTKULIAH char(25),
SKS smallint)

Membuat table
CREATE TABLE MHS
(NPM char(8) notnull, NAMA char(25) notnull,
ALAMAT char(30) notnull);
CREATE TABLE MKUL
(KDMK char(5) notnull, MTKULIAH char(25)
notnull, SKS smallint notnull);
CREATE TABLE NILAI
(NPM char(8) notnull, KDMK char(5) notnull,
MID smallint, FINAL smallint);

Pembuatan Index

Sintaks:
CREATE [UNIQUE] INDEX nama_index
ON nama_tabel (nama_kolom);
Contoh :
1. Buat index data mahasiswa berdasarkan NPM dengan
nama MHSIN dimana NPM tidak boleh sama
CREATE UNIQUE INDEX MHSIN
ON MHS(NPM):

2. CREATE INDEX NILAIIN ON


NILAI(KDMK);

Pembuatan View

Sintaks :
CREATE VIEW nama view^l(nama kolom1,...)]
AS SELECT statement
[WITH CHECK OPTION];

Contoh :
1. Buat view dengan nama MHSVIEW yang berisi
semua data mahasiswa
CREATE VIEW MHSVIEW
AS SELECT * FROM MHS;

2. CREATE VIEW NILVIEW(NPM, KDMK, MID)


AS SELECT NPM, KDMK, MID FROM NIIAI;

Menghapus Database /
Tabel / Index / View

Sintaks :DROP DATABASE nama_db;


DROP TABLE nama_tabel;
DROP INDEX nama_index;
DROP VIEW nama_view;

Contoh : Hapus tabel MHS


DROP TABLE MHS;

Merubah Struktur Tabel

Sintaks : ALTER TABLE nama_tabel


ADD (nama_kolom jenis_kolom
[BEFORE (nama kolom)]
MODIFY (nama_kolom jenis_kolom)
DROP (nama_kolom jenis_kolom);

Contoh :

1. Tambahhan kolom JKEL dengan panjang 1 karakter


pada tabel MHS
ALTER TABLE MHS ADD(JKEL char(1));

2. Ubah panjang kolom MTKULIAH menjadi 30 karakter


ALTER TABLE MKUL
MODIFY(MTKULIAH char(30));

3. Hapus kolom JKEL dari tabel MHS


ALTER TABLE MHS DROP(JKEL char(1));

Contoh Data
MHS

NPM NAMA ALAMAT


10296832 Nurhayati Jakarta
10296126 Astuti Jakarta
31296500 Budi Depok
41296525 Prananingru Bogor
m
50096487 Pipit Bekasi
21196353 Quraish Bogor

MKUL

KDM MTKULIAH SKS


K
KK021 P.Basis Data 2
KD132 SIM 3
KD122 Pancasila 2

NILAI

NPM KDMK MID FINAL


1029683 KK021 60 75
2
1029612 KK132 70 90
6
3129650 KK021 55 40
0
4129652 KK122 90 80
5
2119635 KK122 75 75
3
5009648 KK132 80 70
7
1029683 KK132 40 30
2

Data Manipulation Langluage (DML)


INSERT

Sintaks : INSERT INTO


nama_tabel[(nama_kolom1,……)]
VALUES(data 1, ...);

Contoh :

1. Masukkan data mata kuliah Berkas Akses dengan


kode KK222 dan besarnya 2 SKS

INSERT INTO MKUL


VALUES("KK222", "Berkas Akses”,2);

2. INSERT INTO NILAI(NPM,KDMK,MID)


VALUES(“32296222",”KK222”,30);

UPDATE

Sintaks: UPDATE nama table

SET nama kolom = ekspresi


WHERE kondisi;

Contoh :

1. Ubah alamat menjadi “Depok" untuk mahasiswa yang


memiliki NPM “50096487”

UPDATE MHS SET ALAMAT =”Depok"


WHERE NPM = “50096487";

2 . UPDATE NILAI SET MID=MID+10


WHERE KDMK="KK021";

DELETE

Sintaks : DELETE FROM nama tabel


WHERE kondisi

Contoh :

Hapus data nilai mata kuliah "KK021”bagi mahasiswa


yang mempunyai NPM”10296832"

DELETE FROM NILAI


WHERE NPM="10296832" AND KDMK="KK021”;

SELECT

Sintaks : SELECT [DISTINCT] nama_kolom


FROM nama table
[WHERE kondisi]
[GROUP BY nama_kolom]
[ HAVING hondisi ]
[ORDER BY nama_kolom [ASC/DESC]]

Contoh ? Satu tabel ( Simple Query)

1. Tampilkan semua data mahasiswa


SELECT NPM,NAMA,ALAMAT
FROM MHS;
atau

SELECT * FROM MHS;

Hasil:
NPM NAMA ALAMAT
10296832 Nurhayati Jakarta
10296126 Astuti Jakarta
31296500 Budi Depok
41296525 Prananingru Bogor
m
50096487 Pipit Bekasi
21196353 Quraish Bogor

2. Tampilkan mata kuliah yang SKS-nya 2

SELECT MTKULIAH FROM MKUL


WHERE SKS = 2;
Hasil:

MTKULIAH
P.Basis Data
Pancasila

 SELECT * FROM NILAI


WHERE MID >= 60 OR FINAL > 75;

 SELECT NPM, KDMK, MID FROM NILAI


WHERE MID BETWEEN 70 AND 100;

3). Tampilkan nama mahasiswa yang diawali dengan huruf "P"

SELECT NAMA FROM MHS


WHERE NAMA LIKE "P%";

Hasil :

NAMA
Prananingrum
Pipit

 SELECT NAMA FROM MHS


WHERE NAMA NOT LIKE "%a%";

 SELECT NAMA FROM MHS


WHERE NAMA LIKE "_u%”;

4). Tampilhan alamat mahasiswa, dimana alamat yang sama hanya


ditampilkan satu kali saja

SELECT DISTINCT ALAMAT FROM MHS;

Hasil:

ALAMAT
Jakarta
Depok
Bogor
Bekasi

5).Tampilkan semua data mahasiswa dengan nama terurut dari "Z" ke


"A"

SELECT * FROM MHS


ORDER BY NAMA DESC;

Hasil :

NPM NAMA ALAMAT


10296832 Nurhayati Jakarta
10296126 Astuti Jakarta
31296500 Budi Depok
41296525 Prananingru Bogor
m
50096487 Pipit Bekasi
21196353 Quraish Bogor

 Tampilkan alamat mahasiswa dan jumlah mahasiswa yang


bertempat tinggal di alamat tersebut

SELECT ALAMAT, COUNT(*) FROM MHS


GROUP BY ALAMAT;

Hasil :

ALAMAT COUNT
Jakarta 2
Depok 1
Bogor 2
Bekasi 1

 Tampilkan alamat dan jumlah mahasiswa yang bertempat


tinggal pada alamat yang jumlahnya lebih dari satu

SELECT ALAMAT, COUNT(*) FROM MHS


GROUP BY ALAMAT
HAVING COUNT(*)>1;

Hasil:

ALAMAT COUNT(*)
Jakarta 2
Bogor 2
6). Tampilkan nilai Midtest tertinggi dan terendah utk mata kuliah
"KD132”

SELECT MAX(MID), MIN(MID) FROM NILAI


WHERE KDMK="KD132”;

Hasil:

MAX(MID) MIN(MID)
80 40

 Tampilkan rata-rata dgn jumlah nilai final test mata kuliah


"KD132"

SELECT AVG(FINAL), SUM(FINAL) FROM NILAI


WHERE KDMK = “KD132";

Hasil:

AVG(FINAL) SUM(FINAL)
40 120

Lebih Dari SatuTabel

1). Tampilkan nama mahasiswa yang mempunyai nilai midtest lebih


kecil dari 60

Sub Query
Langkah-langkah
SELECT FROM WHERE
SELECT FROM WHERE

SELECT FROM WHERE


SELECT NPM FROM NiLAl WHERE MID< 60

SELECT FROM WHERE


SELECT NPM FROM NiLAl WHERE MID< 60

SELECT FROM WHERE NPM IN


SELECT NPM FROM NiLAl WHERE MID< 60

Join

Langkah

SELECT NAMA FROM MHS, NILAI WHERE


MHS.NPM = NILAI.NPM AND NILAI.MID< 60);

SELECT NAMA FROM MHS, NILAI WHERE


MHS.NPM = NILAI.NPM AND NILAI.MID< 60);

Hasil:
NAMA
Nurhayati
Budi

2). a. Sub Query :

 SELECT NAMA FROM MHS WHERE NPM IN


(SELECT NPM FROM NILAI WHERE KDMK IN
(SELECT KDMK FROM MKUL
WHERE MTKULIAH = "SIM”));

. b. JOIN :

 SELECT NAMA FROM MHS, NILAI, MKUL


WHERE MKUL.MTKULIAH = “SIM” AND
NILAI.KDMK = MKUL.KDMK AND
MHS.NPM - NILAI.NPM;

3). Tampilhan nama mahasiswa yang tidak mengambil mata kuliah


"KK021"

SELECT NAMA FROM MHS WHERE NOT EXISTS


(SELECT ~ FROM NILAI
WHERE NILAI.NPM=MHS.NPM AND
KDMK= "KK021” );

Hasil:

NAMA
Astuti
Prananingrum
Pipit
Quraish

4). Tampilkan NPM mahasiswa yang bernama Budi atau yang


memiliki nilai final test > 75

SELECT NPM FROM MHS WHERE NAMA=”Budi”


UNION SELECT NPM FROM NILAI
WHERE FINAL>75;

Hasil:

NPM
31296500
10296126
41296525

Data Access

 GRANT

Sintaks : GRANT hak_akses ON nama db


[WITH GRANT OPTION]
[AS GRANTOR];

GRANT hak akses ON nama_tabel


TO nama_pemakai
[WITH GRANT OPTION]
[AS GRANTOR]

Contoh : Berikan hak akses kepada Avi untuk menampilkan nilai


final test

GRANT SELECT(FINAL) ON NILAI TO AVI;

 REVOKE

Sintaks : REVOKE hak_akses ON nama_db


FROM narna_pemakai;

REVOKE hak_akses ON nama_tabel


FROM nama_pemakai;

Contoh : Tarik kembali dari Avi hak akses untuk menampilkan nilai
final test

REVOKE SELECT(FINAL)
ON NILAI FROM AVI;
Data Integrity
 RECOVER TABLE
Sintaks : RECOVER TABLE nama_tabel;
Contoh :
Kembalikan keadaan data mahasiswa seperti
pada saat sebelum terjadi kerusakan RECOVER
TABLE MHS;
Auxiliary

 UNLOAD
Sintaks : UNLOAD TO”nama_path"
[DELIMiTER”char_pemisah”]
SELECT atatement;

Contoh : Ubah semua data mahasiswa ke bentuk


ASCII dan disimpan ke file teks di dircctory /home/avi

UNLOAD TO "/home/avi/teks"
DELIMITER “|'' SELECT * FROM MHS;

 LOAD
Sintaks : LOAD FROM “nama_path”
DELIMITER”char_pemisah"
INSERT INTO nama_tabel[nama_kolom];

Contoh : Merubah file teks ke tabel MHS_2 di directory /home/avi :

LOAD FROM"/home/avi/teks"
DELIMITER “|'' INSERT INTO MHS_2;
 RENAME

Sintaks : RENAME COLUMN nama_kolom_lama


TO nama_kolom_baru;

Contoh : Ganti nama kolom ALAMAT yang ada pada tabel MHS
menjadi KOTA

RENAME COLUMN MHS ALAMAT


TO KOTA;

SQL (Structured Query Language)


SQL adalah salah satu bahasa yang digunakan untuk model relasional
yang berfungsi untuk memasukkan, memilih,merubah, dan
menghapus data.

SQL banyak digunakan para pemakai, karena

 Bahasa yang mudah dipelajari


 Berisi perintah-perintah yarig sederhan
 Merupakan bahasa yang non-procedural, yaitu yang
menerangkan informasi apa saja yang diperlukan, bukan
bagaimana caranya untuk mendapatkannya.
 Dapat digunakan oleh beragam pemakai
 Dapat digunakan untuk pemberian otoritas terhadap pemakai

SQL terdiri dari :


Data Definition Lnnguage (DDL )
Manipulotion Language (DML)

SQL dapat digunakan dalam dua cara:

1. SQL Interactive
Pemroseson dilakukan dengan cara memasukkan sebuah
pernyataan SQL melalui terminal atau mikrokomputer dan langsung
diproses, Hasilnya langsung dapat direpresentasikan.

2. SQL Sisip
Pemrosesan dilakukan dengan cara menyisipkan pernyataan
SQL ke dalam sebuah program. SQL ini tidak langsung dilihat oleh
pemakai.

Contoh Tabel :

PEMASOK

NOPEM NAPEM KOTA


P01 Harapan Jakarta
P02 Sentosa Bandung
P03 Prima Surabaya
P04 Perdana Jakarta
P05 Utama Bandung

BARANG

NOBA NABAR HARGA


R
B01 Kemeja 70000
B02 CelanaPanjang 60000
B03 Kaos Kaki 5000
B04 Ikat Pinggang 20000
B05 Kemeja 100000

PEMASOKKAN

NOPEM NOBAR JUMLAH


P01 B01 40
P01 B02 30
P01 B03 50
P01 B04 50
P01 B05 20
P02 B01 100
P02 B05 100
P03 B03 200
P03 B04 150
P04 B02 100

DATA DEFINITION
Terdapat beberapa perintah DDL :

CREATE TABLE CREATE VIEW CREATE INDEX


ALTER TABLE
DROPTABLE DROP VIEW DROP INDEX
I. BASE TABLES

CREATE TABLE

Bentuk umum CREATE TABLE base-table


(column-definition [,columndefinition].....
[,primary-key-definiton]
[, foreign-key-definition [forreign-key-definition] . .]);

Contoh :

CREATE TABLE PEMASOK


( NOPEM CHAR(5) NOT NULL,
NAPEM CHAR(25) NOT NULL,
KOTA CHAR(15) NOT NULL,
PRIMARY KEY(NOPEM));

ALTER TABLE

Bentuk umum :
ALTER TABLE base-table ADD column data-type;

Contoh :
ALTER TABLE PEMASOK ADD ALAMAT CHAR(30);

DROP TABLE

Bentuk umum :

DROP TABLE base-table ;

Contoh :
DROP TABLE PEMASOK ;

II. INDEXES

CREATE INDEX

Bentuk umum :

CREATE [UNIQUE] INDEX index


ON base-table (column [order] [, column [order] );

Contoh :

CREATE UNIQUE INDEX XPEM ON PEMASOK(NOPEM);


CREATE UNIQUE INDEX XBAR ON BARANG(NOBAR);
CREATE UNIQUE INDEX XPB ON PEMASOKKAN
(NOPEM,NOBAR);

DROP INDEX

Bentuk umum :
DROP INDEX index;

Contoh :
DROP INDEX XPEM;

DATA MANIPULATION
SQL menyediakan 4 perintah DML :

SELECT DELETE
UPDATE INSERT

SIMPLE QUERIES

Bentuk umum :
SELECT [DISTINCT] item(s)
FROM table(s)
[WHERE condition]
[GROUP BY fleld(s)]
[HAVING condition ]
[ORDER BY field(s) ;

1. Tampilkan nomor & nama pemasok untuk pemasok yang berlokasi


di Bandung

SELECT NOPEM, NAPEM


FROM PEMASOK
WHERE KOTA = 'Bandung' ;

Hasil :

NOPEM NAPEM
P02 Sentosa
P05 Utama

2. Tampilkan nomor-nomor pemasok dari pemasok yang memasok


barang

SELECT NOPEM
FROM PEMASOKKAN ;

Hasil :
NOPEM
P01
P01
P01
P01
P02
P02
P03
P03
P04

3. Untuk mengeliminasi duplikasi gunokan DISTINCT :

SELECT DISTINCT NOPEM


FROM PEMASOKAN ;

Hasil :
NOPEM
P01
P02
P03
P04

4. Tampilkan semua detail dari pemasok

SELECT * FROM PEMASOK ;


atau
SELECT NOPEM, NAPEM, KOTA
FROM PEMASOK ;

5. Tampilkan nomor dgn nama pemasok untuk pemasok yang berada


di kota Jakarta dengan diurutkan namanya dari besar ke kecil.
SELECT NOPEM,NAPEM
FROM PEMASOK
WHERE KOTA = 'Jakarta'
ORDER BY NAPEM DESC ;
hasil:
NOPEM NAPEM
P04 Perdana
PO1 Harapan

6. Penggunaan BETWEEN

Tampilkan detail dari Barang yang mempunyai harga antara 50000


dan 100000

SELECT * FROM BARANG


WHERE HARGA BETWEEN 50000 AND 100000 ;

Hasil :

NOBAR NABAR HARGA


B01 Kemeja 70000
B02 Celana Panjang 60000
B05 Kemeja 100000

Penggunaan In

7. Tampilkan detail barang yang mempunyai harga 50000 dan 100000

SELECT * FROM BARANG


WHERE HARGA IN( 50000,100000 );

Hasil:
NOBAR NABAR HARGA
B05 Kemeja 100000

JOIN QUERIES

 Join Query merupakan salah satu kelebihan dari database


relasional.
 Join Query diperlukan apabila memerlukan data yong di retrieve
lebih satu tabel.

Contoh:

Tampilkan Nama Pemasok yang memasok barang B01

SELECT NAPEM
FROM PEMASOK, PEMASOKKAN
WHERE PEMASOK.NOPEM = PEMASOKKAN.NOPEM
AND NOBAR = 'B01’;

Hasil :
NAPEM
Harapan
Sentosa

Tampilkan Nomor-nomor Pemosok yang tinggal di kota yang sama,


pasangkan untuk tiap dua pemasok, dimana nomor pemasok pertama
lebih kecil dari nomor pemasok ke dua.

SELECT FIRST.NOPEM, SECOND.NOPEM


FROM PEMASOK FIRST, PEMASOK SECOND
WHERE FIRST.KOTA = SECOND.KOTA
AND FIRST.NOPEM < SECOND.NOPEM;

Hasil :

NOPEM NOPEM
P01 P04
P02 P05

Tampilkan Nama pemasok beserta kotanya dimana pemasok tersebut


memasok barang yang harganya lebih dari 70000,diurut berdasarkan
nama pemasok secara descending.
SELECT NAPEM, KOTA
FROM PEMASOK, PEMASOKKAN, BARANG
WHERE PEMASOK.NOPEM = PEMASOKKAN.NOPEM
AND BARANG.NOBAR = PEMASOKKAN.NOBAR
AND HARGA > 70000
ORDER BY NAPEM DESC;

Hasil :

NAPEM KOTA
Sentosa Bandung
Harapan Jakarta

AGGREGATE FUNCTION

COUNT Digunakan untuk menghitung banyaknya nilai dalam


suatu kolom atau jumlah baris pada table
SUM Digunakan untuk menjumlahkan nilai-nilai pada suatu
kolom
11. Tampilkan Jumlah dari pemosok
AVG Digunakan untuk menghitung nilai rata-rata pada
SELECT COUNT (*) FROM PEMASOK ;

Hasil: 5

12. Tampilkan jumlah pemasok yang memasok barang

SELECT COUNT (DISTINCT NOPEM) FROM PEMASOKKAN ;

hasil: 4.

13. Tampilkan jumlah total dari barang yang dipasok oleh pemosok
P02
.

SELECT SUM (JUMLAH)


FROM PEMASOKKAN
WHERE NOPEM='PO2';

Hasil : 200

Penggunaan GROUP BY

GROUP BY digunakan untuk mengelompokkan data


berdasarkan suatu kolom.

14. Tampilkan Nomor barang jumlah total perbarang yang dipasok

SELECT NOBAR, SUM(JUMLAH)


FROM PEMASOKKAN
GROUP BY NOBAR;

Hasil :

NOBAR
B01 140
B02 130
B03 250
B04 200
B05 120

Penggunaan HAVING

Kondisi pada klausa Having sama dengan kondisi pada klausa


WHERE, hanya kondisi pada klausa Having berisi suatu fungsi.

15. Tampilkan nomor pemasok yang memasok lebih dari satu barang

SELECT NOPEM
FROM PEMASOKKAN
GROUP BY NOPEM
HAVING COUNT (*) > 1;

Hasil :
NOPEM
P01
P02
P03

Penggunaan LIKE

Perintah LIKE digunakan untuk pengambilan per karakte


O Tanda'-' digunakan untuk satu atau beberapa karakter tunggal
O Tanda '%' digunakan untuk n karakter terurut, n mungkin kosong

Contoh :

Kota like '%a%' Kota yang berisi karakter a, letak a bebas.


Kota like B_____ Kota yang berawalan B diikuti oleh 6 karakter
setelah b.
Napem like '%n ' Nama pemasok yang karkter ke dua terakhirnya
adalah n.

16. Tampilkan semua pemasok yang namanya dimulai dengan huruf


H

SELECT *
FROM PEMASOK
WHERE NAPEM LIKE ‘H%’;

Hasil :
NOPEM NAPEM KOTA
P01 Harapan Jakarta
Multi level Subquery
17. Tampilkan nama-nama barang yang dipasok oleh pemasok Prima

SELECT NABAR FROM BARANG


WHERE NOBAR IN
(SELECT NOBAR FROM PEMASOKKAN
WHERE NOPEM IN
(SELECT NOPEM FROM PEMASOK
WHERE NAPEM =:'Prima’));

Atau

SELECT NABAR
FROM BARANG,PEMASOKKAN,PEMASOK
WHERE PEMASOK.NOPEM = PEMASOKKAN.NOPEM
AND BARANG.NOBAR = PEMASOKKAN.NOBAR
AND NAPEM = 'Prima' ;

Hasil :

NABAR
Kaos kaki
Ikat pinggang

Korelasi Subquery
18. Tampilkan Nama pemasok yang memasok barang B01
SELECT NAPEM
FROM PEMASOK
WHERE 'B01' IN
( SELECT NOBAR
FROM PEMASOKKAN
WHERE NOPEM = PEMASOK.NOPEM );

Hasil :
NAPEM
Harapan
Sentoso

19. Tampilkan nomor barang yang dipasok oleh lebih dari satu
pemasok

SELECT DISTINCT PEMASOKKANX.NOBAR


FROM PEMASOKKAN PEMASOKKANX
WHERE PEMASOKKANX.NOBAR IN
(SELECT PEMASOKKANY.NOBAR
FROM PEMASOKKAN PEMASOKKANY
WHERE PEMASOKKANY.NOPEM ~ =
PEMASOKKANX.NOPEM ) ;
Hasil :
NOBAR
B01
B02
B03
B04
B05

Penggunaan Aggregate function di dalam nested query

20. Tampilkan nomor barang yang harganya lebih murah dari harga
maksimum

SELECT NOBAR FROM BARANG


WHERE HARGA <
(SELECTMAX(HARGA) FROM BARANG);

Hasil :
NOBAR
B01
B02
B03
B04

Penggunaan NOT EXISTS

21. Tampilkan Nama pemasok yang tidak memasok barang BO2

SELECT NAPFM
FROM PEMASOK
WHERE NOT EXISTS
( SELECT *
FROM PEMASOKKAN
WHERE PEMASOKKAN.NOPEM =
PEMASOK.NOPEM
AND NOBAR = 'B02') ;

Hasil :
NAPEM
Sentosa
Prima

Pengunaan UNION

Operator UNION digunahnn untuk menggabungkan hasil dari


dua query

Aturan dalam menggunakan UNION :


 Pernyataan SELECT harus mempunyai Jumlah ekspresi kolom
yang sama
 Ekspresi kolom yang akan digabungkan harus mempunyai tipe
data yang sama
 Hanya pernyataan SELECT terakhir ynng bisa diikuti klausa
ORDER BY.
 Pernyataan SELECT tidak perlu lagi menggunakan kata
DISTINCT, karena SQL akan menghapus baris yang
mempunyai nilai sama secara otomotis.

Tampilkan nomor barang yang harganya kurang dari 10000 atau


dipasok oleh P03

SELECT NOBAR
FROM BARANG
WHERE HARGA < 10000
UNION
SELECT NOBAR
FROM PEMASOKKAN
WHERE NOPEM ='P03' ;

Hasil :
NOBAR
B03
B04

UPDATE

Bentuk Umum

UPDATE table
SET field = scalar expression [f ield = scalar expression]
[WHERE condition];

Ubahlah kota dari nomor pemasok P03 menjadi Jakarta

UPDATE PEMASOK
SET KOTA = ' Jakarta’
WHERE NOPEM = P03 ;

Ubahlah harga-harga barang dari pemasok yang tinggal dl Jakarta


dengan ditambahkan 10000

UPDATE BARANG
SET HARGA = HAR6A + 10000
WHERE NOBAR IN
(SELECT NOBAR
FROM PEMASOKKAN
WHERE NOPEM IN
( SELECT NOPEM
FROM PEMASOK
WHERE KOTA ='Jakarta'));

DELETE

Bentuk Umum

DELETE
FROM table
[WHERE condition] ;

Hapuslah semua pemasokkan barang-barang yang harganya lebih


70000

DELETE
FROM PEMASOKKAN
WHERE NOBAR IN
(SELECT NOBAR
FROM BARANG
WHERE HARGA > 70000);

INSERT

Bentuk Umum
INSERT
INTO table ┌ ,field [ field ] ...)]
VALUES (literal [ literal ] …]

Tambahkan barang B06 dimana namanya Celana Panjang dan


harganya 75000

INSERT
INTO BARANG ( NOBAR, NABAR, HARGA)
VALUES ('B06','Celana Panjang, 75000 );

Anda mungkin juga menyukai