I. Data Defenition Language ( DDL ) / Pembentukan database
Membuat tabel (Creating tables)
Syntax
CREATE TABLE (
()
[UNIQUE] [NOT NUL] [PRIMARY KEY] [DEFAULT]
[referential_constraint_defenition>] [CHECK],
()
[UNIQUE] [NOT NULL] [PRIMARY KEY] [DEFAULT]
[referential_constraint_defenition>] [CHECK],
. . .
);
()
[UNIQUE] [NOT NUL] [PRIMARY KEY] [DEFAULT]
[referential_constraint_defenition>] [CHECK],
()
[UNIQUE] [NOT NULL] [PRIMARY KEY] [DEFAULT]
[referential_constraint_defenition>] [CHECK],
. . .
);
keterangan
Unique; Pada kolom tersebut tidak boleh ada data yang sama.
Not Null; tidak boleh data pada kolom tersebut bernilai null,
Unique dan Not Null; kolom tersebut dapat dijadikan primary key.
Default; nilai default yang secara otomatis akan mengisi kolom dengan data default tersebut setiap operasi insert dilakukan.
Referential_Constraint_Definition; Bila kolom tersebut merupakan foreign key terhadap tabel lain.
Dengan syntax FOREIGN KEY REFERENCES
Not Null; tidak boleh data pada kolom tersebut bernilai null,
Unique dan Not Null; kolom tersebut dapat dijadikan primary key.
Default; nilai default yang secara otomatis akan mengisi kolom dengan data default tersebut setiap operasi insert dilakukan.
Referential_Constraint_Definition; Bila kolom tersebut merupakan foreign key terhadap tabel lain.
Dengan syntax FOREIGN KEY REFERENCES
Contoh :
CREATE TABLE Pelajar (
No_Induk CHAR(8),
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
CREATE TABLE Mata_Pelajaran(
Kode CHAR(4),
Nama CHAR(20),
Kelas CHAR(2)
);
CREATE TABLE Nilai(
No_Induk CHAR(8),
Kode CHAR(4),
Nl_Angka Number
);
No_Induk CHAR(8),
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
CREATE TABLE Mata_Pelajaran(
Kode CHAR(4),
Nama CHAR(20),
Kelas CHAR(2)
);
CREATE TABLE Nilai(
No_Induk CHAR(8),
Kode CHAR(4),
Nl_Angka Number
);
Membuat index (Creating indices)
Syntax
. . .
[ () REFERENCES (), . . . ]
CREATE INDEX ON ();
[ () REFERENCES (), . . . ]
CREATE INDEX ON ();
Contoh :
DROP TABLE Pelajar;
CREATE TABLE Pelajar (
No_Induk CHAR(8) PRIMARY KEY,
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
CREATE INDEX nm ON Pelajar(Nama);
DROP TABLE Mata_Pelajaran;
CREATE TABLE Mata_Pelajaran(
Kode CHAR(4) PRIMARY KEY,
Nama CHAR(20),
Kelas CHAR(2)
);
CREATE TABLE Nilai(
No_Induk CHAR(8) REFERENCES Pelajar(No_Induk),
Kode CHAR(4) REFERENCES Mata_Pelajaran(Kode),
Nilai Number
);
CREATE TABLE Pelajar (
No_Induk CHAR(8) PRIMARY KEY,
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
CREATE INDEX nm ON Pelajar(Nama);
DROP TABLE Mata_Pelajaran;
CREATE TABLE Mata_Pelajaran(
Kode CHAR(4) PRIMARY KEY,
Nama CHAR(20),
Kelas CHAR(2)
);
CREATE TABLE Nilai(
No_Induk CHAR(8) REFERENCES Pelajar(No_Induk),
Kode CHAR(4) REFERENCES Mata_Pelajaran(Kode),
Nilai Number
);
Mengubah tabel (Altering tables)
Syntax
ALTER TABLE
[ ADD ( (), . . . ); ]
[ MODIFY ((), . . .); ]
[ ADD ( (), . . . ); ]
[ MODIFY ((), . . .); ]
Keterangan
Add; Penambahan kolom baru.
Modify; Mengubah kolom yang sudah ada sebelumnya.
Modify; Mengubah kolom yang sudah ada sebelumnya.
Contoh :
ALTER TABLE Pelajar
ADD (Jenis_Kelamin CHAR(10));
ADD (Jenis_Kelamin CHAR(10));
Menghapus tabel (Dropping tables)
Syntax
DROP TABLE
DROP INDEX
DROP INDEX
Contoh :
DROP TABLE Pelajar;
DROP INDEX nm;
DROP INDEX nm;
II. Data Manipulation Language ( DML ) / Manipulasi Data
Penyisipan data (Inserting)
Syntax
INSERT INTO [(
VALUES
(,, . . . );
VALUES
(,, . . . );
Contoh :
DROP TABLE Pelajar CASCADE CONSTRAINTS;
CREATE TABLE Pelajar (
No_Induk CHAR(8) PRIMARY KEY,
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
CREATE TABLE Pelajar (
No_Induk CHAR(8) PRIMARY KEY,
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
INSERT INTO Pelajar
VALUES (‘00311217’,’Wempi Satria’,’02-JAN-1982’,’1’,’Laki-laki’);
INSERT INTO Pelajar
VALUES (‘00311211’,’Wempi,’03-MAR -1982’,’1’,’Laki-laki’);
INSERT INTO Pelajar
VALUES (‘00311210’,’Satria’,’12-DEC -1982’,’1’,’Perempuan’);
VALUES (‘00311217’,’Wempi Satria’,’02-JAN-1982’,’1’,’Laki-laki’);
INSERT INTO Pelajar
VALUES (‘00311211’,’Wempi,’03-MAR -1982’,’1’,’Laki-laki’);
INSERT INTO Pelajar
VALUES (‘00311210’,’Satria’,’12-DEC -1982’,’1’,’Perempuan’);
Mengubah data (Updating)
Syntax
UPDATE
SET ,
,
. . . ,
[WHERE ];SET ,
,
. . . ,
Contoh :
UPDATE Pelajar
SET No_Induk = ‘00311216’ ,Nama = ‘Wati’
WHERE No_Induk =’00311210’ and Nama = ‘Satria’;
SET No_Induk = ‘00311216’ ,Nama = ‘Wati’
WHERE No_Induk =’00311210’ and Nama = ‘Satria’;
Menghapus data (Deletion)
Syntax
DELETE FROM
WHERE ;
WHERE ;
Contoh :
DELETE FROM Pelajar
WHERE No_Induk = ‘00311211’;
WHERE No_Induk = ‘00311211’;
Seleksi data (Selection)
Syntax
SELECT [*] [, , . . ., ]
[, , . . . , ]
FROM
WHERE
[AND ]
[AND MONTH_BETWEEN ();
[, , . . . , ]
FROM
WHERE
[AND ]
[AND MONTH_BETWEEN ();
Contoh :
SELECT * FROM Pelajar;
SELECT a.No_Induk, a.Nama, b.Kode, b.Nama, c.Nl_Angka
FROM Pelajar a, Mata_Pelajaran b, Nilai c;
WHERE a.No_Induk=c.No_Induk and b.Kode=c.kode;
SELECT a.No_Induk, a.Nama, b.Kode, b.Nama, c.Nl_Angka
FROM Pelajar a, Mata_Pelajaran b, Nilai c;
WHERE a.No_Induk=c.No_Induk and b.Kode=c.kode;
Membuat tabel maya (Creating views)
Syntax
CREATE VIEW
AS SELECT
FROM
WHERE ;
AS SELECT
FROM
WHERE ;
III. Data Control Language ( DCL ) / Kontrol Data
Konfirmasi menyimpan data di memory ke database (Commit)
Syntax
COMMIT [WORK];
Contoh :
INSERT INTO Pelajar
VALUES (‘00311210’,’Satria’,’15-DEC -1982’,’1’,’Perempuan’);
COMMIT;
VALUES (‘00311210’,’Satria’,’15-DEC -1982’,’1’,’Perempuan’);
COMMIT;
Mengembalikan status transaksi sebelum penyimpanan (Rollback)
Syntax
ROLLBACK [WORK];
Pemberian hak dari satu user ke user lain (Grant)
Syntax
GRANT
ON TO
[WITH GRAN OPTION];
ON TO
[WITH GRAN OPTION];
Penghapusan hak yang diberikan (Revoke)
Syntax
REVOKE
FROM ;
FROM ;
Spesifikasi akses
All Privileges; Semua hak diberikan.
Select; Untuk seleksi
Update; Untuk mengubah data
Insert; Untuk menyisipkan data
Delete; Untuk menghapus data
Select; Untuk seleksi
Update; Untuk mengubah data
Insert; Untuk menyisipkan data
Delete; Untuk menghapus data
IV. EKSPRESI
FROM
Untuk mendefenisikan tabel yang menjadi sumber data dari suatu perintah seleksi
Contoh :
SELECT * FROM Pelajar
WHERE
Untuk mendefenisikan kondisi pengambilan data dari suatu perintah seleksi
Contoh :
SELECT * FROM Pelajar WHERE No_Induk = ‘00311217’;
GROUP BY
Untuk Mengelompokkan data berdasarkan ekspresi group
Syntax :
SELECT
FROM
WHERE
GROUP BY ;
FROM
WHERE
GROUP BY ;
Contoh :
SELECT a.No_Induk, b.Nama, c.Nl_Angka
FROM Pelajar.a, Nilai b
WHERE a.No_Induk=c.No_Induk and b.kode=c.kode
GROUP BY a.No_Induk, b.Nama, c.Nl_Angka;
FROM Pelajar.a, Nilai b
WHERE a.No_Induk=c.No_Induk and b.kode=c.kode
GROUP BY a.No_Induk, b.Nama, c.Nl_Angka;
ORDER BY
Untuk mengurutkan data hasil seleksi
Syntax :
SELECT
FROM
WHERE
ORDER BY [DESC];
FROM
WHERE
ORDER BY [DESC];
Contoh :
SELECT * FROM Pelajar
ORDER BY No_Induk;
ORDER BY No_Induk;
HAVING
Untuk mendefenisikan batasan seleksi berdasarkan GROUP BY
Syntax :
SELECT
FROM
WHERE
GROUP BY
HAVING ;
FROM
WHERE
GROUP BY
HAVING ;
Contoh :
SELECT a.No_Induk, b.Nama, c.Nl_Angka
FROM Pelajar.a, Nilai b
WHERE a.No_Induk=c.No_Induk and b.kode=c.kode
GROUP BY a.No_Induk, b.Nama, c.Nl_Angka
HAVING Nilai>80;
FROM Pelajar.a, Nilai b
WHERE a.No_Induk=c.No_Induk and b.kode=c.kode
GROUP BY a.No_Induk, b.Nama, c.Nl_Angka
HAVING Nilai>80;
V. PREDIKAT
COMPARISON
Pembanding dua nilai dengan syarat type data yang dibandingkan harus sama
Sama dengan, =
Tidak sama dengan,
Lebih kecil, <
Lebih besar, >
Lebih kecil dan sama dengan, >=
Lebih besar dan sama dengan, <=
Tidak sama dengan,
Lebih kecil, <
Lebih besar, >
Lebih kecil dan sama dengan, >=
Lebih besar dan sama dengan, <=
BETWEN
Pembanding untuk mengecek apakah suatu nilai berada dalam range tertentu atau tidak
Syntax :
… BETWEEN … AND …
… NOT BETWEEN … AND …
… NOT BETWEEN … AND …
Contoh :
Menampilkan data nilai pada range 80 dan 100
SELECT * FROM Nilai
WHERE Nl_Angka BETWEEN 80 AND 100;
WHERE Nl_Angka BETWEEN 80 AND 100;
IN / NOT IN
Untuk melakukan pengecekan apakah suatu nilai terdapat dalam suatu himpunan
Syntax :
IN ( … )
IN SELECT …
IN SELECT …
NOT IN ( … )
NOT IN SELECT …
NOT IN SELECT …
Contoh :
Select * FROM Pelajar a
WHERE a.No_Induk IN (SELECT b.No_Induk FROM Nilai b);
WHERE a.No_Induk IN (SELECT b.No_Induk FROM Nilai b);
LIKE / NOT LIKE
Untuk membandingkan data dengan pola / struktur tertentu, untuk satu karakter dipakai ( _ ) dan string ( % )
Syntax :
… LIKE
… NOT LIKE
… NOT LIKE
Contoh :
SELECT * FROM Pelajar
WHERE Nama LIKE ‘We%’;
WHERE Nama LIKE ‘We%’;
IS NULL / IS NOT NULL
Untuk membandingkan suatu nilai dengan NULL
Syntax :
… IS NULL
… IS NOT NULL
… IS NOT NULL
Contoh :
SELECT * FROM Pelajar
WHERE Kelas IS NULL
WHERE Kelas IS NULL
EXIST
Untuk pengecekan apakah suatu query memiliki hasil atau tidak
Syntax :
… WHERE EXIST (SELECT … )
Contoh :
SELECT * FROM Pelajar a
WHERE EXIST (
SELECT b.No_Induk FROM Nilai b
WHERE a.No_Induk=b.No_Induk);
WHERE EXIST (
SELECT b.No_Induk FROM Nilai b
WHERE a.No_Induk=b.No_Induk);
Nama : Muhammad Arsyad
NPM : 11.63.0216
Kelas : TI UNISKA /5G
Sumber dari : http://13rezza.wordpress.com/syntax-sql-dan-contoh/
Tidak ada komentar:
Posting Komentar