Rabu, 09 Oktober 2013

Syntax SQL dan Contoh


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],
. . .
);

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
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
);

Membuat index (Creating indices)

Syntax

. . .
[ () 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
);

Mengubah tabel (Altering tables)

Syntax

ALTER TABLE
[ ADD ( (), . . . ); ]
[ MODIFY ((), . . .); ]

Keterangan

Add; Penambahan kolom baru.
Modify; Mengubah kolom yang sudah ada sebelumnya.

Contoh :

ALTER TABLE Pelajar
ADD (Jenis_Kelamin CHAR(10));

Menghapus tabel (Dropping tables)

Syntax

DROP TABLE
DROP INDEX

Contoh :

DROP TABLE Pelajar;
DROP INDEX nm;

II. Data Manipulation Language ( DML ) / Manipulasi Data

Penyisipan data (Inserting)

Syntax

INSERT INTO [(
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)
);
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’);

Mengubah data (Updating)

Syntax

UPDATE
SET ,
,
. . . ,
[WHERE ];

Contoh :

UPDATE Pelajar
SET No_Induk = ‘00311216’ ,Nama = ‘Wati’
WHERE No_Induk =’00311210’ and Nama = ‘Satria’;

Menghapus data (Deletion)

Syntax

DELETE FROM
WHERE ;

Contoh :

DELETE FROM Pelajar
WHERE No_Induk = ‘00311211’;

Seleksi data (Selection)

Syntax

SELECT [*] [, , . . ., ]
[, , . . . , ]
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;

Membuat tabel maya (Creating views)

Syntax

CREATE VIEW
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;

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];

Penghapusan hak yang diberikan (Revoke)

Syntax

REVOKE
FROM ;

Spesifikasi akses

All Privileges; Semua hak diberikan.
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 ;

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;

ORDER BY

Untuk mengurutkan data hasil seleksi

Syntax :

SELECT
FROM
WHERE
ORDER BY [DESC];

Contoh :

SELECT * FROM Pelajar
ORDER BY No_Induk;

HAVING

Untuk mendefenisikan batasan seleksi berdasarkan GROUP BY

Syntax :

SELECT
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;

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, <=

BETWEN

Pembanding untuk mengecek apakah suatu nilai berada dalam range tertentu atau tidak

Syntax :

… BETWEEN … AND …
… NOT BETWEEN … AND …

Contoh :

Menampilkan data nilai pada range 80 dan 100
SELECT * FROM Nilai
WHERE Nl_Angka BETWEEN 80 AND 100;

IN / NOT IN

Untuk melakukan pengecekan apakah suatu nilai terdapat dalam suatu himpunan

Syntax :

IN ( … )
IN SELECT …
NOT IN ( … )
NOT IN SELECT …

Contoh :

Select * FROM Pelajar a
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

Contoh :

SELECT * FROM Pelajar
WHERE Nama LIKE ‘We%’;

IS NULL / IS NOT NULL

Untuk membandingkan suatu nilai dengan NULL

Syntax :

 … IS NULL
… IS NOT NULL

Contoh :

SELECT * FROM Pelajar
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);


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