Contoh - Contoh SQL (Query)
Contoh - Contoh SQL (Query)
1. Membuat Database
CREATE DATABASE [Namadatabase];
USE [namadatabase];
2. Membuat tabel
CREATE TABLE anggota
(idanggota CHAR(10) NOT NULL, nama VARCHAR(40) NOT NULL, sex CHAR(1) NOT NULL,
tempatlahir VARCHAR(40) NOT NULL, tanggallahir DATETIME NOT NULL, alamat VARCHAR(100),
notelepon VARCHAR(30),
CHECK((sex='L') OR (sex='l') OR (sex='P') OR (sex='p')),
PRIMARY KEY (idanggota));
3. Mengisi Tabel
INSERT INTO kategori(idkategori,namakategori) VALUES ('K01','Majalah');
atau :
INSERT INTO kategori values ('K01', 'Pelajaran');
Contoh :
insert into anggota values ('A01','Teguh','L', 'Sragen', '09-06-1975','Klaten', '08152525');
4. Perintah Select
SELECT * FROM ANGGOTA WHERE NAMA LIKE 'E%';
-> Menampilkan yang namanya berawalan huruf E
SELECT * FROM ANGGOTA WHERE UPPER(NAMA) LIKE '%Y%';
-> Menampilkan yang namanya ada Y besar.
SELECT NAMA FROM ANGGOTA WHERE (UPPER(SEX )= 'L') AND (EXTRACT(YEAR FROM
TANGGALLAHIR)<1970);
-> Menampilkan yang laki-laki dan lahir sebelum tahun 1970
SELECT IDBUKU FROM PEMINJAMAN WHERE TANGGALKEMBALI-JADWALKEMBALI >= 1 ;
-> Menampilkan data peminjam buku yang terlambat lebih dari 1 hari
5. Cross Product
CROSS PRODUCT 2 buah tabel berarti mengkombinasikan semua baris pada tabel pertama dengan
setiap baris pada tabel ke dua.
Contoh :
Select * from buku, kategori
ITU SALAH...
Harusnya :
Select * from Buku JOIN Kategori ON (buku.kategori = kategori.idkategori);
Menampilkan id buku yang pernah dipinjam oleh anggota yang berusia lebih dari 1200 hari
SELECT IDBUKU FROM PEMINJAMAN JOIN ANGGOTA ON (Peminjaman.IDAnggota =
Anggota.IDAnggota) WHERE CURRENT_DATE – TANGGALLAHIR > 12000;
Menampilkan judul buku beserta nama beserta nama peminjamnya yang pernah dipinjam oleh anggota
wanita selama lebih dari 3 hari.
SELECT Nama,Judul FROM ANGGOTA JOIN PEMINJAMAN JOIN BUKU ON Peminjaman.IDAnggota =
Anggota.IDAnggota ON Peminjaman.IDBuku = Buku.IDBuku WHERE (UPPER(Sex) = 'P') AND
(tanggalkembali – tanggalpinjam > 3) ;
6. Agregate
Merupakan fungsi untuk menggabungkan banyak baris menjadi 1 baris.
z Count, Max, SUM, AVG
Untuk SUM dan AVG khusus Numerik
Contoh :
SELECT COUNT (Idbuku) FROM Buku
7. Left, Right dan Outer Join
Merupakan fungsi untuk menggabungkan banyak baris menjadi 1 baris.
CONTOH-CONTOH :
SELECT Idbuku, Judul, namakategori FROM Buku RIGHT JOIN Kategori ON (Buku.Kategori =
Kategori.Idkategori) ;
8. Berbagai Contoh
1. Select dengan membuat kolom baru yang sebenarnya tidak ada
SELECT idanggota, tanggalkembali-tanggalpinjam AS lamapinjam from peminjaman;
4. Grouping -> Hasil select dapat dikelompokkan menjadi group-group berdasarkan kesamaan nilai pada
kolom tertentu.
Misal : Menghitung Jumlah orang berdasarkan Jenis Kelamin;
SELECT COUNT(NAMA), SEX FROM ANGGOTA GROUP BY SEX;
5. Group By bisa dilakukan pada banyak kolom. Hasil Group By, bisa di group lagi dengan HAVING.
SELECT COUNT(IDANGGOTA), SEX FROM ANGGOTA GROUP BY SEX HAVING SEX = 'L';
6. Order By :
SELECT * FROM ANGGOTA ORDER BY SEX DESCENDING, NAMA ASCENDING
9. Menampilkan selisih usia antara anggota tertua dan anggota termuda (DALAM HARI)
SELECT MAX(tanggal_lahir) – MIN(tanggal_lahir) AS Selisihhari FROM ANGGOTA;