By : Adi Setiansyah, S. Kom - Nop'13 s/d Jan'14
Perintah SQL Database SQL Server (Administrasi Database)
Perintah SQL Database SQL Server (Administrasi Database)
Berikut ini
perintah-perintah SQL pada Database SQL Server. Materi pelatihan berupa
contoh-contoh perintah SQL dasar mulai dari CREATE, SELECT, UPDATE, DELETE,
sampai PROCEDURE dan TRIGGER.
Membuat Database
CREATE DATABASE
rumahsakit
Menghapus
Database
DROP DATABASE
rumahsakit
Menggunakan
Database
USE rumahsakit
Membuat Tabel
CREATE TABLE dokter
(
nip nvarchar(50)
NOT NULL,
nama nvarchar(200)
NULL,
alamat text NULL,
tgllahir datetime
NULL,
tunjangan float
NULL,
PRIMARY KEY (nip)
)
CREATE TABLE
jabatan
(
idjabatan
nvarchar(50) NOT NULL PRIMARY KEY,
namajabatan
nvarchar(200) NULL
)
Menambah Kolom
pada Tabel
ALTER TABLE dokter
ADD idjabatan nvarchar(50) NULL
Menambah Data
INSERT INTO dokter
(nip, nama, alamat, tgllahir, tunjangan) VALUES ('222', 'Dr. Dewi', 'Solo',
'1983-02-20', 1500000);
Mengupdate Data
UPDATE dokter SET
nip = '333', nama = 'Dr. Asri', alamat = 'Jogja', tgllahir = '1984-03-14',
tunjangan = 2000000 WHERE nip = '444'
Menghapus Data
DELETE FROM dokter
WHERE nip = '111'
Memfilter Data
dengan Klausa WHERE
SELECT * FROM
dokter WHERE nip = '111'
SELECT * FROM
dokter WHERE nama = 'Dr. Andi Irmawan'
SELECT * FROM
dokter WHERE nama LIKE '%Andi%'
SELECT * FROM
dokter WHERE tunjangan = 1000000
SELECT * FROM
dokter WHERE tunjangan <= 1000000
SELECT * FROM
dokter WHERE tunjangan <> 1000000
SELECT * FROM
dokter WHERE tunjangan IS NULL
SELECT * FROM
dokter WHERE NOT tunjangan IS NULL
SELECT * FROM dokter WHERE tunjangan > 10000 AND alamat LIKE '%Yogya%'
SELECT * FROM dokter WHERE tgllahir > '1980-12-27'
SELECT * FROM dokter WHERE tunjangan > 10000 AND alamat LIKE '%Yogya%'
SELECT * FROM dokter WHERE tgllahir > '1980-12-27'
Fungsi Menambah
Tanggal atau Mengurangi Tanggal dengan Hari, Bulan, atau Tahun
SELECT
nip,DATEADD(day,30,TglLahir) AS Kadaluarsa FROM dokter
SELECT
nip,DATEADD(day,-30,TglLahir) AS Kadaluarsa FROM dokter
SELECT
nip,nama,DATEADD(year,60,TglLahir) AS Pensiun FROM dokter
SELECT
nip,nama,tgllahir FROM dokter WHERE GETDATE() > DATEADD(day,30,tgllahir)
Menggabungkan
Dua Buah Tabel dengan Penggabungan Biasa
SELECT * FROM
dokter, jabatan WHERE dokter.idjabatan = jabatan.idjabatan
Menggabungkan
Dua Buah Tabel dengan JOIN
SELECT * FROM
dokter JOIN jabatan ON dokter.idjabatan = jabatan.idjabatan
Menggabungkan
Dua Buah Tabel dengan LEFT JOIN
SELECT * FROM
dokter LEFT JOIN jabatan ON dokter.idjabatan = jabatan.idjabatan
Menggabungkan
Dua Buah Tabel dengan RIGHT JOIN
SELECT * FROM
dokter RIGHT JOIN jabatan ON dokter.idjabatan = jabatan.idjabatan
Menggabungkan
Dua Buah Tabel dengan FULL JOIN
SELECT * FROM
dokter FULL JOIN jabatan ON dokter.idjabatan = jabatan.idjabatan
Menghapus Kolom
dalam suatu Tabel
ALTER TABLE
dokter DROP COLUMN idjabatan
Membuat Tabel
dengan Foreign Key
CREATE TABLE
dokter
(
nip
nvarchar(50) NOT NULL,
nama
nvarchar(200) NULL,
alamat text
NULL,
tgllahir
datetime NULL,
tunjangan float
NULL,
PRIMARY KEY
(nip) ,
CONSTRAINT
fk_dokjab FOREIGN KEY (idjabatan) REFERENCES jabatan(idjabatan)
)
Mengubah kolom
Tabel dan menambahkan Foreign Key setelah Tabel dibuat.
ALTER TABLE
dokter ADD idjabatan nvarchar(50)
ALTER TABLE
dokter ADD CONSTRAINT fk_dokjab FOREIGN KEY (idjabatan) REFERENCES
jabatan(idjabatan)
Mengetes
Foreign Key sudah Bekerja atau Belum
UPDATE dokter
SET idjabatan = 'KEP' WHERE nip = '111'
UPDATE dokter
SET idjabatan = 'MANN' WHERE nip = '222'
UPDATE dokter
SET idjabatan = NULL WHERE nip = '111'
UPDATE jabatan
SET idjabatan = 'KPL' WHERE idjabatan = 'KEP'
UPDATE jabatan
SET idjabatan = 'STF' WHERE idjabatan = 'STA'
Msg 547, Level
16, State 0, Line 1
The UPDATE
statement conflicted with the FOREIGN KEY constraint "fk_dokjab". The
conflict occurred in database "rumahsakit", table
"dbo.jabatan", column 'idjabatan'.
The statement
has been terminated.
Menghapus
Foreign Key
ALTER TABLE
dokter DROP CONSTRAINT fk_dokjab
Menambah
Foreign Key dengan On Update Cascade
ALTER TABLE
dokter ADD CONSTRAINT fk_dokjab FOREIGN KEY (idjabatan) REFERENCES
jabatan(idjabatan) ON UPDATE CASCADE
Mengetes
Foreign Key dengan Cascade Update
UPDATE jabatan
SET idjabatan = 'KPL' WHERE idjabatan = 'KEP'
Menghapus
Foreign Key
ALTER TABLE
dokter DROP CONSTRAINT fk_dokjab
Menambah
Foreign Key dengan On Delete Cascade
ALTER TABLE
dokter ADD CONSTRAINT fk_dokjab FOREIGN KEY (idjabatan) REFERENCES
jabatan(idjabatan) ON DELETE CASCADE
Mengetes
Foreign Key dengan Cascade Delete
DELETE jabatan WHERE
idjabatan = 'KPL'
Menghapus
Foreign Key
ALTER TABLE
dokter DROP CONSTRAINT fk_dokjab
Menambah
Foreign Key dengan Cascade Delete dan Cascade Update
ALTER TABLE
dokter ADD CONSTRAINT fk_dokjab FOREIGN KEY (idjabatan) REFERENCES
jabatan(idjabatan) ON UPDATE CASCADE ON DELETE CASCADE
Mengetes
Foreign Key dengan Cascade Delete dan Cascade Update
UPDATE jabatan
SET idjabatan = 'KPL' WHERE idjabatan = 'KEP'
DELETE jabatan
WHERE idjabatan = 'KPL'
Membuat Tabel
Baru Untuk Mempraktekkan Gabungan Join 3 Tabel
CREATE TABLE
spesialis
(
idspesialis
nvarchar(50) NOT NULL PRIMARY KEY,
namaspesialis
nvarchar(200) NULL,
)
Menambahkan
Kolom pada Tabel
ALTER TABLE
dokter ADD idspesialis nvarchar(50) NULL
Gabungan Join 3
Tabel dengan Cara Sederhana
SELECT * FROM dokter,
jabatan, spesialis WHERE dokter.idjabatan = jabatan.idjabatan AND
dokter.idspesialis = spesialis.idspesialis
Join
Penggabungan 3 Tabel dengan JOIN
SELECT * FROM
dokter JOIN jabatan ON dokter.idjabatan = jabatan.idjabatan JOIN spesialis ON
dokter.idspesialis = spesialis.idspesialis
Menghapus Kolom
pada suatu Tabel
ALTER TABLE
dokter DELETE COLUMN idspesialis
Mengubah Tipe
data dari suatu Kolom pada Tabel
ALTER TABLE
dokter ALTER COLUMN idspesialis nvarchar(50) NULL
Agregat
Penjumlahan, Hitung Baris, Maksimum, Minimum, dan Rata-rata
SELECT
SUM(tunjangan), MIN(tunjangan), MAX(tunjangan), COUNT(nip), AVG(tunjangan) FROM
dokter
Memberi Nama
Kolom dengan Klausa AS
SELECT
SUM(tunjangan) as total FROM dokter
Menjumlahkan
Tunjangan Per Jabatan
SELECT idjabatan,
SUM(tunjangan) as total FROM dokter GROUP BY idjabatan
Menampilkan
Tunjangan dan Total Semua Tunjangan Dokter dengan SubQuery
SELECT nip,
tunjangan, (SELECT SUM(tunjangan) as total FROM dokter WHERE idjabatan =
d.idjabatan) FROM dokter d
Menampilkan
Tunjangan dan Persentase terhadap Total Semua Tunjangan Dokter dengan SubQuery
SELECT nip,
(tunjangan/(SELECT SUM(tunjangan) FROM dokter WHERE idjabatan =
d.idjabatan))*100 as persentase FROM dokter d
Menampilkan
Dokter dengan Persentase terhadap Total Semua Tunjangan Dokter yang lebih dari
30% per Jabatan dengan SubQuery
SELECT nip FROM
dokter d WHERE (tunjangan/(SELECT SUM(tunjangan) FROM dokter WHERE idjabatan =
d.idjabatan))*100 > 30
Menampilkan
Beberapa Dokter dengan Klausa IN
SELECT nip,
nama FROM dokter d WHERE nip IN (‘001’,’002’,’003’)
Menampilkan
Dokter dengan Tunjangan Terbesar dengan IN
SELECT nip,
nama FROM dokter d WHERE nip IN (SELECT TOP 3 * FROM dokter ORDER BY tunjangan
DESC)
Daftar Semua
Teman dokter sama spesialis dari 2 orang dokter spesialis yg mempunyai
tunjangan terbesar
SELECT nip,
nama FROM dokter WHERE idspesialis IN (SELECT TOP 2 idspesialis FROM dokter
ORDER BY tunjangan DESC)
SELECT nip,
nama, (tunjangan / (SELECT SUM(tunjangan) FROM dokter)) * 100 AS persentase,
tunjangan FROM dokter
SELECT nip,
nama, (tunjangan / (SELECT SUM(tunjangan) FROM dokter)) * 100 AS persentase,
tunjangan FROM dokter WHERE ((tunjangan / (SELECT SUM(tunjangan) FROM dokter))
* 100) > 30
Contoh lain
SubQuery Berlapis-lapis
SELECT * FROM
(SELECT nip, nama, (tunjangan/(SELECT SUM(tunjangan) FROM dokter)) * 100 AS
persentase, tunjangan FROM dokter) d WHERE d.persentase > 30
SELECT nip,
nama, (tunjangan / (SELECT SUM(tunjangan) FROM dokter) WHERE idspesialis =
d.idspesialis) * 100 AS persentase, tunjangan FROM dokter d
Mengkopi suatu
Tabel ke Tabel lain atau Memasukkan hasil Query menjadi sebuat Tabel Temporary
SELECT *
INTO
backupdokter
FROM dokter
SELECT * FROM
backupdokter
DROP TABLE
backupdokter
Membuat Tabel
untuk Backup Data
CREATE TABLE
backupdokter
(
id int NOT NULL
PRIMARY KEY IDENTITY,
waktu datetime
NULL,
nip
nvarchar(50) NULL,
nama
nvarchar(200) NULL,
alamat text
NULL,
tgllahir
datetime NULL,
tunjangan float
NULL
)
Mengkopi Tabel
ke Tabel Backup atau Memasukkan hasil sebuah Query ke Tabel Backup
INSERT INTO
backupdokter (waktu, nip, nama, alamat, tgllahir, tunjangan)
SELECT
GETDATE(), nip, nama, alamat, tgllahir, tunjangan
FROM dokter
SELECT * FROM
backupdokter
Membuat Stored
Procedure
CREATE
PROCEDURE sp_totaltunjangan
AS
SELECT
SUM(tunjangan) AS total
FROM dokter
Menjalankan
Stored Procedure
EXECUTE
sp_totaltunjangan
Membuat Stored
Procedure dengan Parameter Masukan
CREATE
PROCEDURE sp_totaljabatan
@idjab
nvarchar(50)
AS
SELECT
SUM(tunjangan) AS total
FROM dokter
WHERE idjabatan
= @idjab
Menjalankan
Stored Procedure dengan Parameter Input
EXECUTE
sp_totaljabatan 'KEP'
Membuat Stored
Procedure dengan Parameter Input dan Output
CREATE
PROCEDURE tertinggiterendah
@idjab
varchar(10),
@tunjtertinggi
float OUTPUT,
@tunjterendah
float OUTPUT
AS
SELECT
@tunjtertinggi=(SELECT MAX(tunjangan) FROM dokter WHERE idjabatan = @idjab)
SELECT
@tunjterendah=(SELECT MIN(tunjangan) FROM dokter WHERE idjabatan = @idjab)
Menyiapkan
Parameter dan Memanggil Stored Procedure yang Menggunakan Parameter Input
Output
----
DECLARE
@idjabcari varchar(10);
DECLARE
@hsltertinggi float;
DECLARE
@hslterendah float;
SET
@idjabcari='MAN'
EXECUTE
tertinggiterendah @idjab=@idjabcari, @tunjtertinggi=@hsltertinggi OUTPUT,
@tunjterendah=@hslterendah OUTPUT
SELECT
@hsltertinggi AS "tertinggi", @hslterendah AS "terendah"
---
Menambah Kolom
pada Tabel untuk mempraktekkan Trigger
ALTER TABLE
jabatan ADD totaltunjangan float NULL;
Mengetes
perintah SUM
SELECT
SUM(tunjangan) FROM dokter WHERE idjabatan = ‘MAN’
Mengetes
perintah SubQuery untuk Mengupdate Semua Baris dalam Suatu Tabel
UPDATE jabatan
SET totaltunjangan = (SELECT SUM(tunjangan) FROM dokter d WHERE d.idjabatan =
jabatan.idjabatan)
SELECT * FROM
jabatan
Membuat Trigger
untuk Mengupdate Total Tunjangan ketika Ada Tunjangan Diubah, Ditambah atau
Dihapus
CREATE TRIGGER
updatetotaltunjangan
ON dokter
AFTER INSERT,
UPDATE, DELETE
AS
BEGIN
UPDATE jabatan
SET totaltunjangan = (SELECT SUM(tunjangan) FROM dokter d WHERE d.idjabatan =
jabatan.idjabatan)
END;
Mengubah kolom
bertipe TEXT menjadi bertipe NVARCHAR agar bisa dipakai di Trigger
ALTER TABLE
dokter ALTER COLUMN alamat nvarchar(1000) NULL
ALTER TABLE
backupdokter ALTER COLUMN alamat nvarchar(1000) NULL
Membuat Trigger
untuk Membackup Data yang Dihapus (Deleted)
CREATE TRIGGER
backupdelete
ON dokter
AFTER DELETE
AS
BEGIN
INSERT INTO
backupdokter (waktu, nip, nama, alamat, tgllahir, tunjangan)
SELECT
GETDATE(), nip, nama, alamat, tgllahir, tunjangan
FROM deleted;
END;
Mengetes
Trigger untuk Membackup Data yang Dihapus (Deleted)
SELECT * FROM
dokter;
DELETE FROM
dokter WHERE nip='444';
SELECT * FROM
backupdokter;
Mengembalikan
Data Dokter yang Telah Dihapus
INSERT INTO
dokter (nip, nama, alamat, tgllahir, tunjangan) SELECT TOP 1 nip, nama, alamat,
tgllahir, tunjangan FROM backupdokter WHERE nip='444' ORDER BY waktu DESC
Membuat Trigger
untuk Membackup Data yang Diedit (Updated)
CREATE TRIGGER
backupupdate
ON dokter
AFTER UPDATE
AS
BEGIN
INSERT INTO
backupdokter (waktu, nip, nama, alamat, tgllahir, tunjangan)
SELECT
GETDATE(), nip, nama, alamat, tgllahir, tunjangan
FROM updated;
END;
Membuat Trigger
untuk Membackup Data yang Ditambahkan (Inserted)
CREATE TRIGGER
backupinsert
ON dokter
AFTER INSERT
AS
BEGIN
INSERT INTO
backupdokter (waktu, nip, nama, alamat, tgllahir, tunjangan)
SELECT
GETDATE(), nip, nama, alamat, tgllahir, tunjangan
FROM inserted;
END;
Semoga
bermanfaat.
MACAM-MACAM PERINTAH SQL (QUERY)
Ditulis oleh: Arief Hellion
- Sunday,
10 March 2013
Macam - macam perintah pada SQL -
Secara umum SQL hanya memiliki 3 komponen penting, yang digunakan untuk mendefinisikan, memanipulasi serta sebagai pengontrol data yang ada pada sebuah database.
Komponen – komponen tersebut merupakan,
1.
Data Definisi Language (DDL)
DDL merupakan bahasa atau perintah pada SQL yang
digunakan untuk mendefinisikan data seperti menulis, menghapus dan mengatur
atau mengubah data.
Perintah – perintah yang ada pada komponen DDL yaitu CREATE, DROP, dan ALTER.
Perintah – perintah yang ada pada komponen DDL yaitu CREATE, DROP, dan ALTER.
o CREATE
digunakan untuk membuat database, membuat tabel, membuat view dan membuat index.
digunakan untuk membuat database, membuat tabel, membuat view dan membuat index.
Membuat database
Contoh sintak
Create database
namadatabase
Membuat tabel lengkap dengan kolomnya
Contoh sintak
Create table
namatabel
(namakolom1
typedata1,
namakolom2
typedata2,
namakolom3
typedata3)
Type data dapat berupa char(), int, numerik dan sebagainya sesuai denga nama kolom.
Membuat view
view merupakan bentuk alternatif penyajian data dari
satu tabel atau lebih, beberapa tujuan membuat view adalah meningkatkan
keamanan data serta penyederhanaan bagi para pengguna.
Contoh sintak
Create view namaview
(kolom1, kolom2, . . . .)
as select statement
from namatabel
[with check option]
Keterangan :
Namaview : nama view yang dibuat
Column : nama atribut untuk view
Statement : atribut yang dipilih dari tabel database
Namatabel : nama tabel yang ada pada basis data
Membuat index
yaitu berfungsi untuk membuat index
Contoh sintak
create [unique]
index namaindex
on namatabel
(namakolom)
o DROP
Drop pada SQL adalah perintah yang di gunakan untuk menghapus data – data yang telah di simpan pada database.
Drop pada SQL adalah perintah yang di gunakan untuk menghapus data – data yang telah di simpan pada database.
Drop tabel
yaitu menghapus tabel
Contoh sintak
Drop table
namatabel
Drop view
menghapus view yang telah di buat
Contoh sintak
Drop view namaview
Drop index
Menghapus index
Contoh sintak
Drop index
namaindex
hal yang perlu di ingat adalah penghapusan atau
penggunaan perintah view tidak dapat di urungkan.
o ALTER
kegunaan dari perintah alter adalah untuk merubah atribut pada suatu tabel
kegunaan dari perintah alter adalah untuk merubah atribut pada suatu tabel
Contoh sintak
Alter table
namatabel Modify (namakolom typekolom)
untuk mengganti type kolom dan nama kolom.
alter table namatabel
add (namakolom type kolom[[before, namakolom]]) menambah kolom.
alter table
namatabel drop (namakolom typekolom)
untuk menghapus kolom pada sebuah tabel.
2.
Data Manipulation Language (DML)
o INSERT
insert berfungsi untuk menambah niali pada suatu tabel.
insert berfungsi untuk menambah niali pada suatu tabel.
Contoh sintak
insert into
namatabel values (‘value1’, ‘value2’,’ ...’)
keterangan : value adalah nilai yang ingin dimasukkan
ke dalam kolom
o UPDATE
Berfungsi untuk merubah record atau nilai didalam suatu kolom
Berfungsi untuk merubah record atau nilai didalam suatu kolom
Contoh sintak
Update namatabel
SET namakolom = recordbaru where kondisi
keterangan recordbaru di ubah sesuai dengan nama nilai
baru yang akan di ubah
o DELETE
Menghapus record atau nilai didalam suatu kolom pada tabel tertentu
Menghapus record atau nilai didalam suatu kolom pada tabel tertentu
Contoh sintak
DELETE namakolom
from namatabel where kondisi
o SELECT
select adalah perintah yang di gunakan untuk menampilkan nilai atau recor yang di pilih
select adalah perintah yang di gunakan untuk menampilkan nilai atau recor yang di pilih
Contoh sintak
select namakolom
from namatabel
3.
Data Control Language (DCL)
o GRANT
grant berfungsi untuk memberikan izin akses kepada pengguna
grant berfungsi untuk memberikan izin akses kepada pengguna
Contoh sintak
Grant privilages on
namatabel to namapengguna
artinya memebrikan izin akses kepada namapengguna
o REVOKE
yaitu untuk mencabut izin akses kepada pengguna yang telah di beri izin akses
yaitu untuk mencabut izin akses kepada pengguna yang telah di beri izin akses
Contoh sintak
REVOKE privileges
ON namatabel from namapengguna
Macam – macam fungsi pada SQL
3.
Tanda *
digunakan untuk memilih semua isi tabel
Contoh sintak
select * from
namatabel
4.
FungsiWHERE
berfungsi untuk menentkan suatu pilihan atau kondisi tertentu
berfungsi untuk menentkan suatu pilihan atau kondisi tertentu
Contoh sintak
select * from
namatabel where namakolom = “kondisi”
5.
Fungsi DISTINC
digunakan untuk menghilangakan nilai ganda pada suatu
kolom atau tabel
Contoh sintak
select distinct
namakolom from namatabel
6.
Operator AND
digunakan untuk memilih nilai yang memiliki kondisi
sama antara kondisi1 dan kondisi2
contoh sintak
select * from
namatabel where kondisi1=’..’ AND kondisi2 = ‘...’
7.
Operator OR
digunakan untuk memilih suatu tabel atau kolom dan
menampilkan nilai jika salah satu kondisi dari kondisi yang di tentukan
memenuhi
Contoh sintak
select * from
namatabel where kondisi1=’..’ OR kondisi2 = ‘...’
8.
Fungsi NOT
di gunakan untuk memilih suatu nilai pada tabel atau
kolom yang tidak sama dengan kondisi yang telah di tentukan
Contoh sintak
selesct * from
namatabel where namakolom not = ‘kondisi’
9.
Fungsi ORDER BY
digunakan untuk memilih suatu nilai dari tabel atau
kolom dan mengurutkan data tersebut
Contoh sintak
select namakolom
from nama tabel
where namakolom =
‘kondisi’
order by
namakolompengurut desc/asc
keterangan : namakolompengurut adalah dasar pengurutan
10. Fungsi GROUP BY
berfungsi untuk menelompokkan suatu data, namun pada
pada fungsi ini juga biasanya paling banyak melibatkan operator pembanding dan
fungsi perhitungan
Contoh sintak
Contoh sintak
select namakkolom from namatabel
group by
namakolomyangakandikelompokkan
having count namakolom
>4
keterangan having count adalah fungsi yang digunakan
untuk mendukung fungsi group by.
11. Fungsi BETWEEN
fungsi between digunakan untuk memilih nilai di antara
kondisi yang di tentukan
Contoh sintak
select * from
namatabel where ‘kondisi’ between ‘kondisi’ – ‘kondisi’
12. Fungsi PERHITUNGAN
a.
Count untuk mengitung jumlah
baris atau kolom
b.
Sum di gunakan untuk
menjumlahkan suatu nilai yag memiliki type data numerik
c.
Avg berfungsi untuk membuat
nilai rata – rata
d.
Max berfungsi untuk mencari
nilai terbesar dan
e.
Min untuk mencri nilai
terkecil
Contoh sintak
select avg
namakolom from namatabel
13. Fungsi JOIN
§ INNER JOIN (SIMPLE JOIN)
yaitu bentuk kondisi join dimana di antara 2 atau
lebih tabel yang ingin di join memiliki hubungan sehingga semua isi tabel yang
di pilih bisa di tampilkan
Contoh sintak
Contoh sintak
select * from
namatabel1 inner join namatabel2
where
namatabel1.kondisisama = namatabel1. Kondisisama
§ NON-EQUIJOIN
adalah kondisi join yang tidak menagndung opertor sama dengan (=)
adalah kondisi join yang tidak menagndung opertor sama dengan (=)
Contoh sintak
select * from namatabel1
inner join namatabel2
where
namatabel1.kondisisama and namatabel1. Kondisisama
§ OUTER JOIN
yaitu bentuk nilai join yang memenuhi daari
kedua tabel, Outer join terdiri dari 2 yaitu,
1.
LEFT OUTER JOIN
yaitu di tandai dengan operator (+), tabel asal atau
yang memiliki tanda (+) akan dilengkapi dengan tabel yang lainnya dan berada
pada sebelah kiri.
Contoh sintak
select
tabel1.kolom, tabel2.kolom
from tabel1, tabel2
where tabel1.kolom
(+) = tabel2.kolom
atau
select tabel1.kolom, tabel2.kolom
from tabel1 left
outer join tabel2
on tabel1.kolom =
tabel2.kolom
2.
RIGHT OUTER JOIN
Sama dengan left outer join namun peletakan data atai
nilai dari tabel lain berada pada sebelah kanan tabel asal.
Contoh sintak
select
tabel1.kolom, tabel2.kolom
from tabel1, tabel2
where tabel1.kolom
= tabel2.kolom(+)
atau
select tabel1.kolom, tabel2.kolom
from tabel1 right
outer join tabel2
on tabel1.kolom =
tabel2.kolom
§ SELF JOIN
Self join adalah suatu bentuk kondisi join tau
penggabungan yang terjadi pada dua tabel yang sama kondisinya dari kedua tabel
tersebut dan menambahkan suatu kata dengan kondisi yang sama antara kedua tabel
Contoh sintak
Select
tabel1.namakolom ||’ works for’ || tabel2.namakolom
from namatabel1,
namatabel2
where
namatabel1.kolompersmaantabel1 = namakolom2.kolompersamaantabel2
misalkan akan menghasilkan
misalkan akan menghasilkan
rola works for hengki
Rola adalah kondisi yang dipilih pada tabel1
Hengki adalah kondisi dipilih pada tabel2
works for adalah kata yang di tambah dari perintah di atas
Tidak ada komentar:
Posting Komentar