SlideShare una empresa de Scribd logo
1 de 13
MENGENAL OPERASI DASAR SQL
1. DDL (Data Definition Language)
DDL merupakan bahasa yang digunakan untuk membuat atau memodifikasi database dan
tabel,
Perintah DDL a.l:
a. CREATE Untuk membuat
Syntak :
- membuat database
CREATE DATABASE nama_database
- membuat tabel
CREATE TABLE nama_tabel ( field1 type_data1 (lebar_data1), field2 type_data2
(lebar_data2)
- Apabila akan menambahkan konstrain integritas PRIMARY KEY maka syntaknya adalah
sbb :
CREATE TABLE nama_tabel ( field1 type_data1 (lebar_data1) PRIMARY KEY, field2
type_data2 (lebar_data2))
- Catatan : yang akan dijadikan primary key adalah field1
Misal :CREATE TABLE mahasiswa (nim char(10), nama char(30), jurusan char(2), ipk
decimal(4,2))
- Mengatur agar data selalu diisi
Saat menciptakan tabel, pada field ditambah pemodifikasi NOT NULL
CREATE TABLE Barang (
Kode CHAR(3) NOT NULL,
Nama VARCHAR(20) NOT NULL,
Jenis CHAR NOT NULL ,
Jumlah INTEGER,
PRIMARY KEY(kode)
);
Maka pada saat mengisi ke tabel Barang field Kode, Nama, Jenis harus diisi, sedangkan field
Jumlah tidak harus diisi (boleh diisi boleh tidak)
- Menentukan kunci primer
dengan menyertakan PRIMARY KEY.
- Membuat kunci komposit
Untuk kunci yang tersusun lebih dari satu kolom.
CREATE TABLE DetilJual (
NoNota CHAR(3),
Kode CHAR(3),
Jumlah INTEGER UNSIGNED,
PRIMARY KEY(NoNota, Kode));
Ctt: tipe Integer lebarnya boleh diisi boleh tidak, kalau diisi maksimum 11 karakter, kalau
tidak defaulnya 11 karakter.
Tipe Integer Unsigned (bilangan bulat positif)
- Memberi Nilai Bawaan
Jika suatu kolom tidak diberi nilai, bisa dikehendaki untuk dapat diberi nilai bawaan.
Dengan kata kunci DEFAULT.
CREATE TABLE Barang (
Kode CHAR(3) NOT NULL PRIMARY KEY,
Nama VARCHAR(20) NOT NULL,
Jenis CHAR,
Jumlah INTEGER DEFAULT 0);
Ctt: kalau jumlah tidak diisi maka akan diisi defaultnya yi 0 atau:
CREATE TABLE Barang (
Kode CHAR(3) NOT NULL PRIMARY KEY,
Nama VARCHAR(20) NOT NULL,
Jenis CHAR DEFAULT MI,
Jumlah INTEGER DEFAULT 0);
kalau jenis tidak diisi maka akan diisi defaultnya yi MI (minuman)
- Memberi nilai yang unik
Sebenarnya kunci primer juga bertindak sebagi penjamin bahwa nilai suatu kolom akan
bersifat unik (tdk kembar). Namun, kadangkala diperlukan agar suatu kolom yang tidak
berfungsi sebagai kunci primer juga bersifat unik. Hal ini dapat dilakukan dengan
memberikan kekangan UNIQUE pada kolom yang bersangkutan. Contoh
CREATE TABLE Barang (
Kode CHAR(3) NOT NULL PRIMARY KEY,
Nama VARCHAR(20) NOT NULL UNIQUE,
Jenis CHAR,
Jumlah INTEGER DEFAULT 0);
Penambahan kata UNIQUE pada kolom nama menyatakan bahwa tidak boleh ada nama
barang yang sama
- Perbedaan PRIMARY KEY dan UNIQUE
PRIMARY KEY UNIQUE
Dalam sebuah tabel, keberadaannya hanya bisa satu kali Sejumlah kolom yang unik bisa
didefinisikan
Kolom-kolom yang menjadi kunci primer tidak boleh berisi NULL Kolom yang didefinisikan
sebagai kolom unik boleh berisi NULL sepanjang kolom tidak didefinisikan sebagai NOT
NULL
b. DROP Untuk menghapus :
Syntak :
- menghapus database
DROP DATABASE nama_database
- menghapus tabel
DROP TABLE nama_table
c. ALTER Untuk memodifikasi tabel
Syntak :
- menambah field baru
ALTER TABLE nama_tabel ADD [COLUMN] field_baru type_data(lebar_data)
Misal :
ALTER TABLE mahasiswa ADD [COLUMN] alamat varchar(30)
- menghapus field
ALTER TABLE nama_tabel DROP [COLUMN] field_yang_dihapus
Misal :
ALTER TABLE mahasiswa DROP COLUMN alamat atau
ALTER TABLE mahasiswa DROP alamat
- mengedit / mengganti field
ALTER TABLE nama_tabel CHANGE [COLUMN] field_lama field_baru
type_data(lebar_data)
Misal :
ALTER TABLE mahasiswa CHANGE nama nama_mhs char(40)
- Mengubah struktur tabel
mysql> alter table mhs modify nama varchar(35);
artinya: mengubah tipe field nama menjadi varchar(35)
2. DML (Data Manipulation Language)
DML merupakan bahasa untuk memanipulasi data (menambah, membaca/menampilkan,
mengedit, menghapus)
Perintah DML a.l :
a. INSERT INTO: Untuk Menambah data baru/record/baris/row
Syntak :
INSERT INTO nama_tabel (field1, field2, …) VALUES (value1, value2,…).
Field dan value harus berjumlah sama dan masing-masing berpasangan, artinya : value1 akan
diisikan ke field1, value2 akan diisikan ke field2,dst.
Misal:
create table mhs (
nim char(9) not null,
nama varchar(30),
kelamin enum(‗L‘,'P‘),
tglahir date,
jurusan char(2),
ipkum decimal(3,2),
primary key(nim)
);
INSERT INTO mhs (nim,nama,kelamin,
tglahir,jurusan,ipkum)VALUES(‗05023562‘,‘TOTOK‘,‘L‘,‘1991-06-11‘,‘TI‘, 2.45);
atau kalau semua field mau diisi, nama fieldnya tidak perlu ditulis
mysql> insert into mhs
values(‘067890001′, ‗Agus Sugiarto‘, ‗L‘, ‘1990-08-17′, ‗TI‘, 2.56);
Cobalah untuk mengisi beberapa record lagi. Ingat! nim tidak boleh sama dan harus diisi (krn
not null).
Menambah record tetapi hanya field nim, nama, dan kelamin yang diisi:
mysql> insert into mhs(nim, nama, kelamin) values(‘067890003′, ‗Amir Hamzah‘, ‗L‘);
CREATE TABLE Barang (
Kode CHAR(3) NOT NULL,
Nama VARCHAR(20) NOT NULL,
Jenis CHAR(1) NOT NULL ,
Jumlah INTEGER,
PRIMARY KEY(kode)
);
INSERT INTO Barang (Kode, Nama, Jenis, Jumlah)
VALUES (‘001′, ‗Beras‘, ‗M‘, 10);
Jika tidak ingin untuk memasukkan data ke kolom Jenis (Kode,Nama,Jenis: semua NOT
NULL)
INSERT INTO Barang (Kode, Nama, Jenis, Jumlah)
VALUES (‘001′, ‗Beras‘, NULL, 10);
perintah ini akan ditolak: krn jenis tdk diisi padahal harus diisi/NOT NULL (tidak boleh
kosong)
Tetapi kalau jenis diisi ‘null‘ pakai tanda petik, perintah ini akan diterima karena dianggap
karakter
INSERT INTO Barang (Kode, Nama, Jenis, Jumlah)
VALUES (‘001′, ‗Beras‘, ‘NULL‘, 10);
Atau perintah di bawah ini, juga akan ditolak: krn nama, jenis tidak diisi (padahal not null :
tdk boleh kosong)
INSERT INTO Barang (Kode, Jumlah)
VALUES (‘006′, 12);
Maka yang benar:
INSERT INTO Barang (Kode, Nama, Jenis, Jumlah)
VALUES (‘006′,‘Buku‘,‘alat tulis‘,12);
Tetapi kalau field Jumlah tidak diisi maka field jumlah tidak usah ditulis (krn jumlah boleh
kosong/bukan NOT NULL)
INSERT INTO Barang (Kode, Nama, Jenis)
VALUES (‘006′,‘Buku‘,‘alat tulis‘);
atau ditulis juga bisa
INSERT INTO Barang (Kode, Nama, Jenis,jumlah)
VALUES (‘006′,‘Buku‘,‘alat tulis‘,null);
Dengan menggunakan sebuah INSERT, kita bisa menambahkan sejumlah baris yang berasal
dari hasil qeury. Sekarang dicoba membuat tabel baru bernama barangbr dengan perintah
sbb:
create table barangbr (
Kd_brg char(3),
nama varchar(10),
Jenis char(1);
dengan menggunakan INSERT, semua data barang, dengan jenis M (jenis ttt) dapat di
transfer ke tabel barangbr. Caranya sbb:
INSERT INTO barangbr (Kd_brg, nama, Jenis) SELECT Kode, nama, Jenis FROM barang
WHERE Jenis = ‘M‘;
b. UPDATE: Untuk MengEdit/mengubah data
Syntak :
UPDATE nama_tabel SET field1 = value1, field2 = value2,…[ WHERE kriteria ]
Ctt: WHERE tujuannya untuk mengurangu jumlah record yang ditampilkan, kalau tanpa
WHERE semua record akan tampil
Misal :Untuk mengganti nama mahasiwa menjadi ANDI untuk nim 05023562
UPDATE mahasiswa SET nama = ―ANDI‖ WHERE nim=‖05023562‖
mengubah sebuah kolom sebuah baris
UPDATE barang
SET nama = ‗beras delanggu‘
WHERE Kode = ‗001‘;
Mengubah beberapa kolom
UPDATE barang
SET Nama = ‗beras delanggu‘,
Jumlah = 10
WHERE Kode = ‗001‘;
Mengubah beberapa baris
UPDATE barang
SET Jumlah = 0
WHERE Jenis = ‗M‘;
atau
UPDATE barang
SET Jumlah = 10
WHERE Kode = ‗001‘ OR
Kode = ‗004‘;
setelah dieksekusi perintah diatas maka data jumlah milik kode 001 serta 004 berubah
menjadi 10
Mengubah semua baris (semua record, field jumlah isinya null semua)
UPDATE barang
SET Jumlah = null;
Misal dalam tabel barang ditambah atribut/field harga, kita bisa menaikkan harga 20% dari
harga semula, dengan menggunakan bentuk ekspresi sbb:
UPDATE barang
SET harga = 1.2 * harga;
c. DELETE: Untuk Menghapus Data
Syntak :
DELETE FROM nama_tabel[WHERE Kriteria];
Misal :
- Untuk menghapus data mahasiswa yang mempunyai nim 05023562
DELETE FROM mahasiswa WHERE nim = ―05023562‖
- Menghpus sebuah baris
DELETE FROM Barang WHERE Kode = ‗001‘;
akan menghapus baris yang kolom Kode bernilai ‗001‘ (hanya satu karena kunci primer)
- Menghapus beberapa baris
DELETE FROM Barang WHERE Jenis = ‗M‘;
akan menghapus baris yang kolom Jenis bernilai ‗M‘ (bisa lebih dari satu)
- Menghapus semua baris
DELETE FROM Barang;
d. SELECT: untuk membaca atau menampilkan data
SELECT Daftar_field_yang_akan_ditampilkan
FROM nama_tabel
[WHERE kriteria_data_yang_akan_ditampilkan]
Misal :
- Menampilkan semua kolom semua baris
SELECT * FROM Barang;
- menampilkan nim dan nama semua mahasiswa (menampilkan kolom tertentu)
SELECT nim, nama FROM mahasiswa
SELECT Kode, Nama FROM Barang;
- menampilkan nim dan nama mahasiswa jurusan MI
SELECT nim, nama FROM mahasiswa WHERE jurusan = ‗MI‘
- menampilkan semua field dari tabel mahasiswa jurusan MI (memilih baris tertentu)
SELECT * FROM mahasiswa WHERE jurusan = ‗MI‘
SELECT * FROM Barang WHERE Jenis=‘A‘;
- Kalau hasil yang dikehendaki hanya berupa kemungkinan isi dari kolom jenis, maka bisa
menyisipkan kata DISTINCT pada klausa SELECT
SELECT DISTINCT jenis FROM barang;
SELECT DISTINCT kota FROM pegawai;
mengetahui di kota mana saja pegawai bertempat tinggal (tdk semua record ditampilkan)
- Menampilkan jam sekarang
SELECT time(now());
- Menampilkan waktu sekarang
SELECT now();
- Menampilkan tahun sekarang
SELECT year(now());
- Menampilkan tanggal sekarang
SELECT date(now());
- Menampilkan hari sekarang
SELECT day(now());
- Operator Relasi
Beberapa operator relasi yang digunakan pada saat akan dibutuhakan suatu kriteria tertentu
untuk menampilkan data adalah :
Operator Arti
= Sama dengan
> Lebih dari
>= Lebih dari atau sama dengan
< Kurang dari
<= Kurang dari atau sama dengan
<> Tidak Sama Dengan
LIKE Mengandung suatu kata/huruf tertentu
BETWEEN Rentang antara dua nilai
- untuk memperoleh barang yang jumlahnya antara 4 dan 11
SELECT * FROM Barang WHERE Jumlah >= 4 AND Jumlah <= 11;
dapat diganti dengan perintah
SELECT * FROM Barang WHERE Jumlah BETWEEN 4 AND 11;
SELECT nama,stok FROM barang WHERE Jumlah > 10;
SELECT nama,harga FROM barang where not (harga > 6600 AND harga < 3000);
Operator logika (operator Boolean)
Yang sering digunakan adalah : AND (dan/dua-duanya harus benar), OR (atau/salah satu
benar, jawabannya benar) dan NOT (bukan/tidak)
- Menampilkan nim, nama dan alamat mahasiswa jurusan TI dan berjenis kelamin wanita
SELECT nim,nama,alamat FROM mahasiswa WHERE jurusan= ‗TI‘ AND jenis_kel =
‗WANITA‘;
SELECT * FROM barang WHERE jenis = ‗MI‘ AND stok = 10;
SELECT * FROM barang WHERE jenis = ‗MI‘ OR stok = 10;
SELECT nama,jenis FROM barang WHERE NOT jenis = ‗MI‘;
Operator BETWEEN dan NOT BETWEEN
- untuk memperoleh barang yang jumlahnya antara 4 dan 11
SELECT * FROM Barang WHERE Jumlah BETWEEN 4 AND 11;
- Menampilkan nim, nama dan IPK mahasiswa yang mempunyai IPK 2,5 sampai 3,2
SELECT nim,nama,ipk FROM mahasiswa WHERE ipk BETWEEN 2.5 AND 3.2
- untuk memperoleh barang yang jumlahnya lebih kecil dari 4 dan lebih besar dr 11
SELECT * FROM Barang WHERE Jumlah NOT BETWEEN 4 AND 11;
Operator IN dan NOT IN
untuk melakukan pencocokan dengan salah satu yang termasuk didalam daftar
select * from mhs where jurusan = ‗MI‘ or jurusan = ‗KA‘;
untuk memperoleh mhs yang jurusannya MI atau KA.
Dapat diganti dengan
select * from mhs where jurusan IN(‗MI‘,'KA‘);
Bila ditambah NOT di depan IN akan memperoleh data diluar MI dan KA.
Menampilkan semua dari tabel barang yang jenis nya hanya MI dan SA
select * from barang where jenis IN(‗MI‘,‘SA‘);
Menampilkan semua tabel barang yang jenisnya selain MI dan SA
select * from barang where jenis NOT IN(‗MI‘,‘SA‘);
Operator LIKE dan NOT LIKE
- bermanfaat untuk mencari data semacam:
- barang apa saja yang mengandung huruf ‗be‘
- perlu menyebutkan tanda wilcard berupa garis bawah ( _ ) atau persen (%).
• tanda _ berarti sebuah karakter apa saja
contoh:
a_i bisa berati ani, ali, abi, dll
• tanda % berarti cocok dengan karakter apa saja dan berapapun panjangnya
contoh:
cocok dengan apa saja yang mengandung karakter a atau A. - %a%
cocok dengan yang berakhiran a atau A, hanya berlaku untuk yang bertipe VARCHAR - %a
cocok dengan yang berawalan a atau A - a%
contoh:
- menampilkan nama mahasiswa yang berawalan ―PAR‖
SELECT nama FROM mahasiswa WHERE nama LIKE ―PAR%‖
SELECT * FROM Barang WHERE Nama LIKE ‗b%‘;
SELECT * FROM Barang WHERE Nama LIKE ‗%p‘;
SELECT * FROM Barang WHERE Nama LIKE ‗%u%‘;
SELECT * FROM Barang WHERE Nama LIKE ‗_u%‘;
Kalau ditambah NOT berarti menampilkan selain kata yang berawalan b
SELECT * FROM Barang WHERE Nama NOT LIKE ‗b%‘;
- Operator IS NULL dan IS NOT NULL
Jika ingin menampilkan data stok yang berisi NULL:
SELECT * FROM barang WHERE stok IS NULL;
Jika ingin menampilkan semua barang yang stok nya tidak berisi NULL, anda bisa memakai
operator IS NOT NULL
SELECT * FROM barang WHERE stok IS NOT NULL;
Mengurutkan data dengan ORDER BY
- Menampilkan semua barang yang ada di tabel barang secara urut naik berdasarkan kode
barang
SELECT * FROM barang ORDER BY harga;
- Mengurutkan barang berdasar nama secara urut naik (ascending)
SELECT kode, nama FROM barang ORDER BY nama;
- Mengurutkan secara urut turun (descending)
SELECT kode, nama FROM barang ORDER BY nama DESC;
- Mengurutkan barang menurut jenis dan nama
SELECT kode, jenis, nama FROM barang ORDER BY jenis, nama;
- Mengurutkan barang menurut jenis (descending) dan nama (ascending)
SELECT kode, jenis, nama FROM barang
ORDER BY jenis DESC, nama;
atau
SELECT kode, jenis, nama FROM barang
ORDER BY jenis , nama DESC;
- Mengurutkan barang menurut kolom 2 (jenis)
SELECT kode, jenis, nama FROM barang ORDER BY 2;
SELECT kode,jenis,nama FROM barang ORDER BY 2 DESC;
Mengelompokkan data dengan GROUP BY (hampir sama dengan DISTINCT)
Mengetahui jurusan apa saja dalam tabel mhs
SELECT jurusan FROM mhs GROUP BY jurusan;
hasilnya:
+———+
| jurusan |
+———+
| KA |
| MI |
| TI |
| TK |
———–
SELECT jenis FROM barang GROUP BY jenis;
Klausa HAVING (pengganti WHERE)
• Klausa HAVING terkait dengan klausa GROUP BY
• Gunanya untuk menentukan kondisi bagi GROUP BY
• Kelompok yang memenuhi HAVING saja yang akan dihasilkan
- Menampilkan jurusan dari tabel mhs berdasarkan kelompok jurusan, selain jurusan KA
SELECT jurusan FROM mhs group by jurusan
having jurusan <> ‗KA‘;
hasilnya:
+———+
| jurusan |
+———+
| MI |
| TI |
| TK |
+———+
perintah ini dapat diganti dengan:
SELECT jurusan FROM mhs WHERE jurusan <> ‗KA‘
GROUP BY jurusan;
- Menampilkan jenis dari tabel barang berdasarkan kelompok jenis, yang jenisnya MA
SELECT jenis FROM barang group by jenis
having jenis = ‗MA‘;
Penggunaan Fungsi Agregat
Daftar Fungsi Agregat
Fungsi Agregat Keterangan
AVG Memperoleh nilai rata-rata
COUNT Menghitung cacah data
MAX Menghasilkan nilai terbesar
MIN Menghasilkan nilai terkecil
SUM Memperoleh penjumlahan data
Fungsi AVG
- Menghitung harga rata-rata barang
SELECT AVG(harga) FROM barang;
- Menghasilkan rata-rata ipkum
SELECT AVG(ipkum) FROM mhs;
- Menghitung harga rata-rata per jenis
SELECT jenis, AVG(harga) FROM barang GROUP BY jenis;
- Menghasilkan rata-rata ipkum dikelompokkan berdasar jurusan
SELECT jurusan, AVG(ipkum) FROM mhs GROUP BY jurusan;
- Menghasilkan rata-rata ipkum mhs yang mempunyai jurusan MI
SELECT AVG(ipkum) FROM mhs WHERE jurusan = ‗MI‘;
- Menampilkan rata-rata harga dari tabel barang yang jenis MI
SELECT AVG(harga) FROM barang WHERE jenis = ‗MI‘;
atau
SELECT AVG(harga) FROM barang GROUP BY jenis HAVING jenis = ‗MI‘;
Fungsi COUNT
- Menghasilkan cacah baris dari tabel mhs. Kolom nim dalam COUNT dapat diganti dengan
kolom apa saja (hanya 1 field) atau cukup ditulis * (sembarang).
SELECT COUNT(nim) FROM mhs;
SELECT jurusan, COUNT(*) FROM mhs GROUP BY jurusan;
menghasilkan:
+———+———-+
| jurusan | count(*) |
+———+———-+
| KA | 1 |
| MI | 2 |
| TI | 2 |
| TK | 1 |
+———+———-+
- catatan: kolom kedua bisa diganti nama kolomnya dengan klausa AS (untuk memberi nama
lain terhadap suatu keluaran):
SELECT jurusan, COUNT(*) AS cacah FROM mhs GROUP BY jurusan;
menghasilkan:
+———+———-+
| jurusan | cacah |
+———+———-+
| KA | 1 |
| MI | 2 |
| TI | 2 |
| TK | 1 |
+———+———-+
- Menghitung cacah/jml barang per jenis, khusus untuk yang jumlahnya lebih dari 2
SELECT jenis, COUNT(*) FROM barang GROUP BY jenis HAVING COUNT(jenis) > 2;
- Menghitung cacah jenis yang tertera dalam tabel barang
SELECT COUNT(DISTINCT jenis) FROM barang;
Fungsi MAX
Untuk memperoleh nilai terbesar
- Menampilkan harga terbesar
SELECT MAX(harga) FROM barang;
SELECT nama, MAX(harga) FROM barang;
- Menampilkan harga terbesar per jenis
SELECT jenis, MAX(harga) FROM barang GROUP BY jenis;
SELECT jenis, nama, MAX(harga) FROM barang GROUP BY jenis;
Fungsi MIN
Untuk memperoleh nilai yang terkecil
- Menampilkan harga terkecil
SELECT MIN(harga) FROM barang;
SELECT nama, MIN(harga) FROM barang;
- Menampilkan harga terkecil per jenis
SELECT jenis, MIN(harga) FROM barang GROUP BY jenis;
SELECT jenis, nama, MIN(harga) FROM barang GROUP BY jenis;
Fungsi SUM
Untuk melakukan penjumlahan data
- Menghasilkan jumlah seluruh ipkum
SELECT SUM(ipkum) FROM mhs;
- Menampilkan seluruh stok barang
SELECT SUM(stok) FROM barang;
- Menampilkan total stok untuk setiap jenis
SELECT jenis, SUM(stok) FROM barang GROUP BY jenis;
Klausa LIMIT
untuk membatasi jumlah baris yang ditampilkan,
- SELECT * FROM mhs LIMIT 3;
hanya menampilkan 3 record dari atas
- SELECT nama, harga FROM barang LIMIT 4;
Penggunaan Ekspresi
SELECT harga FROM barang;
- Misal harga diskon 10%
SELECT nama,harga * 0.1 FROM barang;
- berarti harga yang di bayarkan 90%
SELECT nama,harga * 0.9 AS hargabr FROM barang;
SELECT nama,harga * 0.9 AS hargabr FROM barang where Kd_brg=‘B07‘;
Ctt:kolom harga diberi judul hargabr
- Untuk melihat kekayaan per barang
SELECT harga * stok FROM barang;
- Melihat total kekayaan
SELECT sum(harga * stok) FROM barang;

Más contenido relacionado

La actualidad más candente

La actualidad más candente (14)

Perintah bahasa Query (SQL)
Perintah bahasa Query (SQL)Perintah bahasa Query (SQL)
Perintah bahasa Query (SQL)
 
7 Materi Kuliah Bahasa SQL
7 Materi Kuliah Bahasa SQL7 Materi Kuliah Bahasa SQL
7 Materi Kuliah Bahasa SQL
 
Modul sql tingkat dasar
Modul sql tingkat dasarModul sql tingkat dasar
Modul sql tingkat dasar
 
Modul 1
Modul 1Modul 1
Modul 1
 
05. manipulasi data update,delete &amp; seleksi
05. manipulasi data   update,delete &amp; seleksi05. manipulasi data   update,delete &amp; seleksi
05. manipulasi data update,delete &amp; seleksi
 
04. manipulasi data perintah insert
04. manipulasi data   perintah insert04. manipulasi data   perintah insert
04. manipulasi data perintah insert
 
Pratikum sistem basis data 3
Pratikum sistem basis data 3Pratikum sistem basis data 3
Pratikum sistem basis data 3
 
Materi is262 SBD_praktikum
Materi is262 SBD_praktikumMateri is262 SBD_praktikum
Materi is262 SBD_praktikum
 
Kd6 Structure Query Language (SQL)
Kd6 Structure Query Language (SQL)Kd6 Structure Query Language (SQL)
Kd6 Structure Query Language (SQL)
 
WEB II PHP 05
WEB II PHP 05WEB II PHP 05
WEB II PHP 05
 
015 function
015  function015  function
015 function
 
Membuat Tabel Relasi
Membuat Tabel RelasiMembuat Tabel Relasi
Membuat Tabel Relasi
 
Modul praktikum vb
Modul praktikum vbModul praktikum vb
Modul praktikum vb
 
DDL dan DML
DDL dan DMLDDL dan DML
DDL dan DML
 

Destacado (9)

Birth of ganesha
Birth of ganeshaBirth of ganesha
Birth of ganesha
 
Special days
Special daysSpecial days
Special days
 
Active Pharma Ingredients by Synthetic molecules-private-limited
Active Pharma Ingredients by Synthetic molecules-private-limitedActive Pharma Ingredients by Synthetic molecules-private-limited
Active Pharma Ingredients by Synthetic molecules-private-limited
 
Incredible fest at Shiksha Niketan
Incredible fest at Shiksha NiketanIncredible fest at Shiksha Niketan
Incredible fest at Shiksha Niketan
 
Merry x mas 2003
Merry x mas 2003Merry x mas 2003
Merry x mas 2003
 
Mother teresa
Mother teresaMother teresa
Mother teresa
 
democracy
democracy democracy
democracy
 
EASA Part 66 Module 5 software management control
EASA Part 66 Module 5 software management controlEASA Part 66 Module 5 software management control
EASA Part 66 Module 5 software management control
 
Sg credit derivatives overview
Sg   credit derivatives overviewSg   credit derivatives overview
Sg credit derivatives overview
 

Similar a Mengenal operasi dasar sql

Similar a Mengenal operasi dasar sql (20)

Data definition language
Data  definition languageData  definition language
Data definition language
 
Dasar-dasar MySQL
Dasar-dasar MySQLDasar-dasar MySQL
Dasar-dasar MySQL
 
SQL (Structured query language).pptx
SQL (Structured query language).pptxSQL (Structured query language).pptx
SQL (Structured query language).pptx
 
Pengantar SQL
Pengantar SQLPengantar SQL
Pengantar SQL
 
Modul 3 _ DDL & DML.pptx
Modul 3 _ DDL & DML.pptxModul 3 _ DDL & DML.pptx
Modul 3 _ DDL & DML.pptx
 
matrei perkuliahana tentang SQL Overview.ppt
matrei perkuliahana tentang SQL Overview.pptmatrei perkuliahana tentang SQL Overview.ppt
matrei perkuliahana tentang SQL Overview.ppt
 
Praktikum 1
Praktikum 1Praktikum 1
Praktikum 1
 
Modul 2 19 jan 2013
Modul 2 19 jan 2013Modul 2 19 jan 2013
Modul 2 19 jan 2013
 
Pertemuan 10
Pertemuan 10Pertemuan 10
Pertemuan 10
 
Dml dan ddl
Dml dan ddlDml dan ddl
Dml dan ddl
 
Part 9 10 - retrieving data lant..
Part 9 10 - retrieving data lant..Part 9 10 - retrieving data lant..
Part 9 10 - retrieving data lant..
 
Pertemuan tentang DDL DML dan praktikum system basis data MYSQL
Pertemuan tentang DDL DML dan praktikum system basis data MYSQLPertemuan tentang DDL DML dan praktikum system basis data MYSQL
Pertemuan tentang DDL DML dan praktikum system basis data MYSQL
 
abd_01_2223.pdf
abd_01_2223.pdfabd_01_2223.pdf
abd_01_2223.pdf
 
4 sql
4 sql4 sql
4 sql
 
MYSQL BAB III
MYSQL BAB IIIMYSQL BAB III
MYSQL BAB III
 
Memahami sql statement
Memahami sql statementMemahami sql statement
Memahami sql statement
 
Command promt p2
Command promt p2Command promt p2
Command promt p2
 
SQL.pdf
SQL.pdfSQL.pdf
SQL.pdf
 
Bab. 5
Bab. 5Bab. 5
Bab. 5
 
Modul 1
Modul 1Modul 1
Modul 1
 

Mengenal operasi dasar sql

  • 1. MENGENAL OPERASI DASAR SQL 1. DDL (Data Definition Language) DDL merupakan bahasa yang digunakan untuk membuat atau memodifikasi database dan tabel, Perintah DDL a.l: a. CREATE Untuk membuat Syntak : - membuat database CREATE DATABASE nama_database - membuat tabel CREATE TABLE nama_tabel ( field1 type_data1 (lebar_data1), field2 type_data2 (lebar_data2) - Apabila akan menambahkan konstrain integritas PRIMARY KEY maka syntaknya adalah sbb : CREATE TABLE nama_tabel ( field1 type_data1 (lebar_data1) PRIMARY KEY, field2 type_data2 (lebar_data2)) - Catatan : yang akan dijadikan primary key adalah field1 Misal :CREATE TABLE mahasiswa (nim char(10), nama char(30), jurusan char(2), ipk decimal(4,2)) - Mengatur agar data selalu diisi Saat menciptakan tabel, pada field ditambah pemodifikasi NOT NULL CREATE TABLE Barang ( Kode CHAR(3) NOT NULL, Nama VARCHAR(20) NOT NULL, Jenis CHAR NOT NULL , Jumlah INTEGER, PRIMARY KEY(kode) ); Maka pada saat mengisi ke tabel Barang field Kode, Nama, Jenis harus diisi, sedangkan field Jumlah tidak harus diisi (boleh diisi boleh tidak) - Menentukan kunci primer dengan menyertakan PRIMARY KEY. - Membuat kunci komposit Untuk kunci yang tersusun lebih dari satu kolom. CREATE TABLE DetilJual ( NoNota CHAR(3), Kode CHAR(3), Jumlah INTEGER UNSIGNED, PRIMARY KEY(NoNota, Kode));
  • 2. Ctt: tipe Integer lebarnya boleh diisi boleh tidak, kalau diisi maksimum 11 karakter, kalau tidak defaulnya 11 karakter. Tipe Integer Unsigned (bilangan bulat positif) - Memberi Nilai Bawaan Jika suatu kolom tidak diberi nilai, bisa dikehendaki untuk dapat diberi nilai bawaan. Dengan kata kunci DEFAULT. CREATE TABLE Barang ( Kode CHAR(3) NOT NULL PRIMARY KEY, Nama VARCHAR(20) NOT NULL, Jenis CHAR, Jumlah INTEGER DEFAULT 0); Ctt: kalau jumlah tidak diisi maka akan diisi defaultnya yi 0 atau: CREATE TABLE Barang ( Kode CHAR(3) NOT NULL PRIMARY KEY, Nama VARCHAR(20) NOT NULL, Jenis CHAR DEFAULT MI, Jumlah INTEGER DEFAULT 0); kalau jenis tidak diisi maka akan diisi defaultnya yi MI (minuman) - Memberi nilai yang unik Sebenarnya kunci primer juga bertindak sebagi penjamin bahwa nilai suatu kolom akan bersifat unik (tdk kembar). Namun, kadangkala diperlukan agar suatu kolom yang tidak berfungsi sebagai kunci primer juga bersifat unik. Hal ini dapat dilakukan dengan memberikan kekangan UNIQUE pada kolom yang bersangkutan. Contoh CREATE TABLE Barang ( Kode CHAR(3) NOT NULL PRIMARY KEY, Nama VARCHAR(20) NOT NULL UNIQUE, Jenis CHAR, Jumlah INTEGER DEFAULT 0); Penambahan kata UNIQUE pada kolom nama menyatakan bahwa tidak boleh ada nama barang yang sama - Perbedaan PRIMARY KEY dan UNIQUE PRIMARY KEY UNIQUE Dalam sebuah tabel, keberadaannya hanya bisa satu kali Sejumlah kolom yang unik bisa didefinisikan Kolom-kolom yang menjadi kunci primer tidak boleh berisi NULL Kolom yang didefinisikan sebagai kolom unik boleh berisi NULL sepanjang kolom tidak didefinisikan sebagai NOT NULL b. DROP Untuk menghapus : Syntak : - menghapus database DROP DATABASE nama_database
  • 3. - menghapus tabel DROP TABLE nama_table c. ALTER Untuk memodifikasi tabel Syntak : - menambah field baru ALTER TABLE nama_tabel ADD [COLUMN] field_baru type_data(lebar_data) Misal : ALTER TABLE mahasiswa ADD [COLUMN] alamat varchar(30) - menghapus field ALTER TABLE nama_tabel DROP [COLUMN] field_yang_dihapus Misal : ALTER TABLE mahasiswa DROP COLUMN alamat atau ALTER TABLE mahasiswa DROP alamat - mengedit / mengganti field ALTER TABLE nama_tabel CHANGE [COLUMN] field_lama field_baru type_data(lebar_data) Misal : ALTER TABLE mahasiswa CHANGE nama nama_mhs char(40) - Mengubah struktur tabel mysql> alter table mhs modify nama varchar(35); artinya: mengubah tipe field nama menjadi varchar(35) 2. DML (Data Manipulation Language) DML merupakan bahasa untuk memanipulasi data (menambah, membaca/menampilkan, mengedit, menghapus) Perintah DML a.l : a. INSERT INTO: Untuk Menambah data baru/record/baris/row Syntak : INSERT INTO nama_tabel (field1, field2, …) VALUES (value1, value2,…). Field dan value harus berjumlah sama dan masing-masing berpasangan, artinya : value1 akan diisikan ke field1, value2 akan diisikan ke field2,dst. Misal: create table mhs ( nim char(9) not null, nama varchar(30), kelamin enum(‗L‘,'P‘), tglahir date, jurusan char(2), ipkum decimal(3,2), primary key(nim) );
  • 4. INSERT INTO mhs (nim,nama,kelamin, tglahir,jurusan,ipkum)VALUES(‗05023562‘,‘TOTOK‘,‘L‘,‘1991-06-11‘,‘TI‘, 2.45); atau kalau semua field mau diisi, nama fieldnya tidak perlu ditulis mysql> insert into mhs values(‘067890001′, ‗Agus Sugiarto‘, ‗L‘, ‘1990-08-17′, ‗TI‘, 2.56); Cobalah untuk mengisi beberapa record lagi. Ingat! nim tidak boleh sama dan harus diisi (krn not null). Menambah record tetapi hanya field nim, nama, dan kelamin yang diisi: mysql> insert into mhs(nim, nama, kelamin) values(‘067890003′, ‗Amir Hamzah‘, ‗L‘); CREATE TABLE Barang ( Kode CHAR(3) NOT NULL, Nama VARCHAR(20) NOT NULL, Jenis CHAR(1) NOT NULL , Jumlah INTEGER, PRIMARY KEY(kode) ); INSERT INTO Barang (Kode, Nama, Jenis, Jumlah) VALUES (‘001′, ‗Beras‘, ‗M‘, 10); Jika tidak ingin untuk memasukkan data ke kolom Jenis (Kode,Nama,Jenis: semua NOT NULL) INSERT INTO Barang (Kode, Nama, Jenis, Jumlah) VALUES (‘001′, ‗Beras‘, NULL, 10); perintah ini akan ditolak: krn jenis tdk diisi padahal harus diisi/NOT NULL (tidak boleh kosong) Tetapi kalau jenis diisi ‘null‘ pakai tanda petik, perintah ini akan diterima karena dianggap karakter INSERT INTO Barang (Kode, Nama, Jenis, Jumlah) VALUES (‘001′, ‗Beras‘, ‘NULL‘, 10); Atau perintah di bawah ini, juga akan ditolak: krn nama, jenis tidak diisi (padahal not null : tdk boleh kosong) INSERT INTO Barang (Kode, Jumlah) VALUES (‘006′, 12); Maka yang benar: INSERT INTO Barang (Kode, Nama, Jenis, Jumlah) VALUES (‘006′,‘Buku‘,‘alat tulis‘,12); Tetapi kalau field Jumlah tidak diisi maka field jumlah tidak usah ditulis (krn jumlah boleh kosong/bukan NOT NULL)
  • 5. INSERT INTO Barang (Kode, Nama, Jenis) VALUES (‘006′,‘Buku‘,‘alat tulis‘); atau ditulis juga bisa INSERT INTO Barang (Kode, Nama, Jenis,jumlah) VALUES (‘006′,‘Buku‘,‘alat tulis‘,null); Dengan menggunakan sebuah INSERT, kita bisa menambahkan sejumlah baris yang berasal dari hasil qeury. Sekarang dicoba membuat tabel baru bernama barangbr dengan perintah sbb: create table barangbr ( Kd_brg char(3), nama varchar(10), Jenis char(1); dengan menggunakan INSERT, semua data barang, dengan jenis M (jenis ttt) dapat di transfer ke tabel barangbr. Caranya sbb: INSERT INTO barangbr (Kd_brg, nama, Jenis) SELECT Kode, nama, Jenis FROM barang WHERE Jenis = ‘M‘; b. UPDATE: Untuk MengEdit/mengubah data Syntak : UPDATE nama_tabel SET field1 = value1, field2 = value2,…[ WHERE kriteria ] Ctt: WHERE tujuannya untuk mengurangu jumlah record yang ditampilkan, kalau tanpa WHERE semua record akan tampil Misal :Untuk mengganti nama mahasiwa menjadi ANDI untuk nim 05023562 UPDATE mahasiswa SET nama = ―ANDI‖ WHERE nim=‖05023562‖ mengubah sebuah kolom sebuah baris UPDATE barang SET nama = ‗beras delanggu‘ WHERE Kode = ‗001‘; Mengubah beberapa kolom UPDATE barang SET Nama = ‗beras delanggu‘, Jumlah = 10 WHERE Kode = ‗001‘; Mengubah beberapa baris UPDATE barang SET Jumlah = 0 WHERE Jenis = ‗M‘; atau
  • 6. UPDATE barang SET Jumlah = 10 WHERE Kode = ‗001‘ OR Kode = ‗004‘; setelah dieksekusi perintah diatas maka data jumlah milik kode 001 serta 004 berubah menjadi 10 Mengubah semua baris (semua record, field jumlah isinya null semua) UPDATE barang SET Jumlah = null; Misal dalam tabel barang ditambah atribut/field harga, kita bisa menaikkan harga 20% dari harga semula, dengan menggunakan bentuk ekspresi sbb: UPDATE barang SET harga = 1.2 * harga; c. DELETE: Untuk Menghapus Data Syntak : DELETE FROM nama_tabel[WHERE Kriteria]; Misal : - Untuk menghapus data mahasiswa yang mempunyai nim 05023562 DELETE FROM mahasiswa WHERE nim = ―05023562‖ - Menghpus sebuah baris DELETE FROM Barang WHERE Kode = ‗001‘; akan menghapus baris yang kolom Kode bernilai ‗001‘ (hanya satu karena kunci primer) - Menghapus beberapa baris DELETE FROM Barang WHERE Jenis = ‗M‘; akan menghapus baris yang kolom Jenis bernilai ‗M‘ (bisa lebih dari satu) - Menghapus semua baris DELETE FROM Barang; d. SELECT: untuk membaca atau menampilkan data SELECT Daftar_field_yang_akan_ditampilkan FROM nama_tabel [WHERE kriteria_data_yang_akan_ditampilkan] Misal : - Menampilkan semua kolom semua baris SELECT * FROM Barang; - menampilkan nim dan nama semua mahasiswa (menampilkan kolom tertentu) SELECT nim, nama FROM mahasiswa SELECT Kode, Nama FROM Barang; - menampilkan nim dan nama mahasiswa jurusan MI SELECT nim, nama FROM mahasiswa WHERE jurusan = ‗MI‘
  • 7. - menampilkan semua field dari tabel mahasiswa jurusan MI (memilih baris tertentu) SELECT * FROM mahasiswa WHERE jurusan = ‗MI‘ SELECT * FROM Barang WHERE Jenis=‘A‘; - Kalau hasil yang dikehendaki hanya berupa kemungkinan isi dari kolom jenis, maka bisa menyisipkan kata DISTINCT pada klausa SELECT SELECT DISTINCT jenis FROM barang; SELECT DISTINCT kota FROM pegawai; mengetahui di kota mana saja pegawai bertempat tinggal (tdk semua record ditampilkan) - Menampilkan jam sekarang SELECT time(now()); - Menampilkan waktu sekarang SELECT now(); - Menampilkan tahun sekarang SELECT year(now()); - Menampilkan tanggal sekarang SELECT date(now()); - Menampilkan hari sekarang SELECT day(now()); - Operator Relasi Beberapa operator relasi yang digunakan pada saat akan dibutuhakan suatu kriteria tertentu untuk menampilkan data adalah : Operator Arti = Sama dengan > Lebih dari >= Lebih dari atau sama dengan < Kurang dari <= Kurang dari atau sama dengan <> Tidak Sama Dengan LIKE Mengandung suatu kata/huruf tertentu BETWEEN Rentang antara dua nilai - untuk memperoleh barang yang jumlahnya antara 4 dan 11 SELECT * FROM Barang WHERE Jumlah >= 4 AND Jumlah <= 11; dapat diganti dengan perintah SELECT * FROM Barang WHERE Jumlah BETWEEN 4 AND 11; SELECT nama,stok FROM barang WHERE Jumlah > 10; SELECT nama,harga FROM barang where not (harga > 6600 AND harga < 3000);
  • 8. Operator logika (operator Boolean) Yang sering digunakan adalah : AND (dan/dua-duanya harus benar), OR (atau/salah satu benar, jawabannya benar) dan NOT (bukan/tidak) - Menampilkan nim, nama dan alamat mahasiswa jurusan TI dan berjenis kelamin wanita SELECT nim,nama,alamat FROM mahasiswa WHERE jurusan= ‗TI‘ AND jenis_kel = ‗WANITA‘; SELECT * FROM barang WHERE jenis = ‗MI‘ AND stok = 10; SELECT * FROM barang WHERE jenis = ‗MI‘ OR stok = 10; SELECT nama,jenis FROM barang WHERE NOT jenis = ‗MI‘; Operator BETWEEN dan NOT BETWEEN - untuk memperoleh barang yang jumlahnya antara 4 dan 11 SELECT * FROM Barang WHERE Jumlah BETWEEN 4 AND 11; - Menampilkan nim, nama dan IPK mahasiswa yang mempunyai IPK 2,5 sampai 3,2 SELECT nim,nama,ipk FROM mahasiswa WHERE ipk BETWEEN 2.5 AND 3.2 - untuk memperoleh barang yang jumlahnya lebih kecil dari 4 dan lebih besar dr 11 SELECT * FROM Barang WHERE Jumlah NOT BETWEEN 4 AND 11; Operator IN dan NOT IN untuk melakukan pencocokan dengan salah satu yang termasuk didalam daftar select * from mhs where jurusan = ‗MI‘ or jurusan = ‗KA‘; untuk memperoleh mhs yang jurusannya MI atau KA. Dapat diganti dengan select * from mhs where jurusan IN(‗MI‘,'KA‘); Bila ditambah NOT di depan IN akan memperoleh data diluar MI dan KA. Menampilkan semua dari tabel barang yang jenis nya hanya MI dan SA select * from barang where jenis IN(‗MI‘,‘SA‘); Menampilkan semua tabel barang yang jenisnya selain MI dan SA select * from barang where jenis NOT IN(‗MI‘,‘SA‘); Operator LIKE dan NOT LIKE - bermanfaat untuk mencari data semacam: - barang apa saja yang mengandung huruf ‗be‘ - perlu menyebutkan tanda wilcard berupa garis bawah ( _ ) atau persen (%). • tanda _ berarti sebuah karakter apa saja contoh: a_i bisa berati ani, ali, abi, dll
  • 9. • tanda % berarti cocok dengan karakter apa saja dan berapapun panjangnya contoh: cocok dengan apa saja yang mengandung karakter a atau A. - %a% cocok dengan yang berakhiran a atau A, hanya berlaku untuk yang bertipe VARCHAR - %a cocok dengan yang berawalan a atau A - a% contoh: - menampilkan nama mahasiswa yang berawalan ―PAR‖ SELECT nama FROM mahasiswa WHERE nama LIKE ―PAR%‖ SELECT * FROM Barang WHERE Nama LIKE ‗b%‘; SELECT * FROM Barang WHERE Nama LIKE ‗%p‘; SELECT * FROM Barang WHERE Nama LIKE ‗%u%‘; SELECT * FROM Barang WHERE Nama LIKE ‗_u%‘; Kalau ditambah NOT berarti menampilkan selain kata yang berawalan b SELECT * FROM Barang WHERE Nama NOT LIKE ‗b%‘; - Operator IS NULL dan IS NOT NULL Jika ingin menampilkan data stok yang berisi NULL: SELECT * FROM barang WHERE stok IS NULL; Jika ingin menampilkan semua barang yang stok nya tidak berisi NULL, anda bisa memakai operator IS NOT NULL SELECT * FROM barang WHERE stok IS NOT NULL; Mengurutkan data dengan ORDER BY - Menampilkan semua barang yang ada di tabel barang secara urut naik berdasarkan kode barang SELECT * FROM barang ORDER BY harga; - Mengurutkan barang berdasar nama secara urut naik (ascending) SELECT kode, nama FROM barang ORDER BY nama; - Mengurutkan secara urut turun (descending) SELECT kode, nama FROM barang ORDER BY nama DESC; - Mengurutkan barang menurut jenis dan nama SELECT kode, jenis, nama FROM barang ORDER BY jenis, nama; - Mengurutkan barang menurut jenis (descending) dan nama (ascending) SELECT kode, jenis, nama FROM barang ORDER BY jenis DESC, nama; atau SELECT kode, jenis, nama FROM barang ORDER BY jenis , nama DESC; - Mengurutkan barang menurut kolom 2 (jenis) SELECT kode, jenis, nama FROM barang ORDER BY 2;
  • 10. SELECT kode,jenis,nama FROM barang ORDER BY 2 DESC; Mengelompokkan data dengan GROUP BY (hampir sama dengan DISTINCT) Mengetahui jurusan apa saja dalam tabel mhs SELECT jurusan FROM mhs GROUP BY jurusan; hasilnya: +———+ | jurusan | +———+ | KA | | MI | | TI | | TK | ———– SELECT jenis FROM barang GROUP BY jenis; Klausa HAVING (pengganti WHERE) • Klausa HAVING terkait dengan klausa GROUP BY • Gunanya untuk menentukan kondisi bagi GROUP BY • Kelompok yang memenuhi HAVING saja yang akan dihasilkan - Menampilkan jurusan dari tabel mhs berdasarkan kelompok jurusan, selain jurusan KA SELECT jurusan FROM mhs group by jurusan having jurusan <> ‗KA‘; hasilnya: +———+ | jurusan | +———+ | MI | | TI | | TK | +———+ perintah ini dapat diganti dengan: SELECT jurusan FROM mhs WHERE jurusan <> ‗KA‘ GROUP BY jurusan; - Menampilkan jenis dari tabel barang berdasarkan kelompok jenis, yang jenisnya MA SELECT jenis FROM barang group by jenis having jenis = ‗MA‘; Penggunaan Fungsi Agregat Daftar Fungsi Agregat Fungsi Agregat Keterangan AVG Memperoleh nilai rata-rata COUNT Menghitung cacah data MAX Menghasilkan nilai terbesar
  • 11. MIN Menghasilkan nilai terkecil SUM Memperoleh penjumlahan data Fungsi AVG - Menghitung harga rata-rata barang SELECT AVG(harga) FROM barang; - Menghasilkan rata-rata ipkum SELECT AVG(ipkum) FROM mhs; - Menghitung harga rata-rata per jenis SELECT jenis, AVG(harga) FROM barang GROUP BY jenis; - Menghasilkan rata-rata ipkum dikelompokkan berdasar jurusan SELECT jurusan, AVG(ipkum) FROM mhs GROUP BY jurusan; - Menghasilkan rata-rata ipkum mhs yang mempunyai jurusan MI SELECT AVG(ipkum) FROM mhs WHERE jurusan = ‗MI‘; - Menampilkan rata-rata harga dari tabel barang yang jenis MI SELECT AVG(harga) FROM barang WHERE jenis = ‗MI‘; atau SELECT AVG(harga) FROM barang GROUP BY jenis HAVING jenis = ‗MI‘; Fungsi COUNT - Menghasilkan cacah baris dari tabel mhs. Kolom nim dalam COUNT dapat diganti dengan kolom apa saja (hanya 1 field) atau cukup ditulis * (sembarang). SELECT COUNT(nim) FROM mhs; SELECT jurusan, COUNT(*) FROM mhs GROUP BY jurusan; menghasilkan: +———+———-+ | jurusan | count(*) | +———+———-+ | KA | 1 | | MI | 2 | | TI | 2 | | TK | 1 | +———+———-+ - catatan: kolom kedua bisa diganti nama kolomnya dengan klausa AS (untuk memberi nama lain terhadap suatu keluaran): SELECT jurusan, COUNT(*) AS cacah FROM mhs GROUP BY jurusan; menghasilkan: +———+———-+ | jurusan | cacah |
  • 12. +———+———-+ | KA | 1 | | MI | 2 | | TI | 2 | | TK | 1 | +———+———-+ - Menghitung cacah/jml barang per jenis, khusus untuk yang jumlahnya lebih dari 2 SELECT jenis, COUNT(*) FROM barang GROUP BY jenis HAVING COUNT(jenis) > 2; - Menghitung cacah jenis yang tertera dalam tabel barang SELECT COUNT(DISTINCT jenis) FROM barang; Fungsi MAX Untuk memperoleh nilai terbesar - Menampilkan harga terbesar SELECT MAX(harga) FROM barang; SELECT nama, MAX(harga) FROM barang; - Menampilkan harga terbesar per jenis SELECT jenis, MAX(harga) FROM barang GROUP BY jenis; SELECT jenis, nama, MAX(harga) FROM barang GROUP BY jenis; Fungsi MIN Untuk memperoleh nilai yang terkecil - Menampilkan harga terkecil SELECT MIN(harga) FROM barang; SELECT nama, MIN(harga) FROM barang; - Menampilkan harga terkecil per jenis SELECT jenis, MIN(harga) FROM barang GROUP BY jenis; SELECT jenis, nama, MIN(harga) FROM barang GROUP BY jenis; Fungsi SUM Untuk melakukan penjumlahan data - Menghasilkan jumlah seluruh ipkum SELECT SUM(ipkum) FROM mhs; - Menampilkan seluruh stok barang SELECT SUM(stok) FROM barang; - Menampilkan total stok untuk setiap jenis SELECT jenis, SUM(stok) FROM barang GROUP BY jenis; Klausa LIMIT untuk membatasi jumlah baris yang ditampilkan, - SELECT * FROM mhs LIMIT 3; hanya menampilkan 3 record dari atas
  • 13. - SELECT nama, harga FROM barang LIMIT 4; Penggunaan Ekspresi SELECT harga FROM barang; - Misal harga diskon 10% SELECT nama,harga * 0.1 FROM barang; - berarti harga yang di bayarkan 90% SELECT nama,harga * 0.9 AS hargabr FROM barang; SELECT nama,harga * 0.9 AS hargabr FROM barang where Kd_brg=‘B07‘; Ctt:kolom harga diberi judul hargabr - Untuk melihat kekayaan per barang SELECT harga * stok FROM barang; - Melihat total kekayaan SELECT sum(harga * stok) FROM barang;