Anda di halaman 1dari 16

Bagian 2 Dasar Menguasai Database MySQL

[ Menguasai Perintah Permintaan Data ]

Bunafit Nugroho www.bunafit-komputer.com bunafit_linux@yahoo.com

Lisensi Dokumen:
Copyright 2006 Bunafit-Komputer.Com Seluruh dokumen di Bunafit-Komputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari Bunafit-Komputer.Com.

2.1 Pendahuluan
Kemampuan dalam membuat membangun database dan tabel telah anda kuasai, untuk mendalami kemapuan anda dalam menggunakan database MySQL, maka pada pada ke-2 ini anda akan mempelajari tentang bahasa-bahasa DML ( Data Manipulation Language ). DML merupakan bahasa pendefinisi data yang didukung oleh MySQL. Dengan menggunakan subbahasa ini anda dapat melakukan operasi-operasi seperti memasukan data (INSERT), merubah data (UPDATE), menampilkan data (SELECT) atau menghapus data (DELETE). Untuk lebih jelasnya, ikutilah pelajaran berikut:

2.2 Persiapan Database dan Tabel


Metode pengajaran yang kami lakukan adalah praktik langsung. Jadi, pada bab ini anda akan langsung dibimbing untuk dapat memanajemen data didalam sebuah database relasional. Sebagai latihan, kita akan menggunakan database yang berguna untuk mengelola data sekolah tinggi.

20

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

2.2.1 Relasi Tabel


Supaya anda tidak bingung, maka pada subbab ini akan kami jelaskan secara detail mengenai rancangan database yang hendak digunakan untuk mempraktikan perintahperintah DML. Relasional tabel yang hendak digunakan adalah seperti pada gambar berikut:

jenis_kampus kd_jenis nm_jenis

data_kampus kd_kampus kd_jenis nm_kampus thn_berdiri jum_fakultas domisili status

Gambar 2.1 Relasional tabel data kampus Kedua tabel diatas akan disimpan kedalam database yang bernama kampus_db. Dengan menggunakan dua tabel diatas, maka diharapkan anda dapat langsung mempraktekan perintah-perintah yang kami perkenalkan.

2.2.2 Membuat Tabel jenis_kampus


Pada rancangan database diatas, tabel jenis_kampus digunakan untuk merekam data-data kampus berdasarkan jenisnya. Tabel ini akan memiliki hubungan satu ke banyak (one to many) dengan tabel data_kampus. Anda dapat membuat tabel jenis_kampus dengan menggunaan perintah berikut:
CREATE TABLE jenis_kampus ( kd_jenis char(3) NOT NULL default '', nm_jenis varchar(60) NOT NULL default '', PRIMARY KEY (kd_jenis) ) TYPE=MyISAM;

Setelah berhasil membuat tabel jenis_kampus, Anda dapat melihat hasilnya dengan mengetikan perintah DESC seperti berikut:
mysql> DESC jenis_kampus; +----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+-------+ | kd_jenis | char(3) | | PRI | | | | nm_jenis | varchar(60) | | | | | +----------+-------------+------+-----+---------+-------+ 2 rows in set (0.00 sec)

21

BUNAFIT KOMPUTER
TOKO SKRIP PROGRAM REFERENSI TA SKRIPSI TESIS TI Klik aja : www.bunafit-komputer.com

2.2.3 Membuat Tabel data_kampus


Selanjutnya kita dapat membuat tabel kedua yang bernama data_kampus. Tabel ini akan digunakan untuk merekam data-data kampus secara detail. Didalam tabel ini terdapat kunci tamu yang berasal dari tabel jenis_kampus. Anda dapat membua tabel ini dengan mengetikan perintah :
CREATE TABLE data_kampus ( kd_kampus varchar(4) NOT NULL default '', kd_jenis char(3) NOT NULL default '', nm_kampus varchar(35) NOT NULL default '', thn_berdiri varchar(4) NOT NULL default '0', jum_fakultas int(2) NOT NULL default '0', domisili varchar(35) NOT NULL default '', status enum('NEGRI', 'SUWASTA') NOT NULL default 'NEGRI', PRIMARY KEY (kd_kampus) ) TYPE=MyISAM;

Setelah perintah diatas dijalankan, maka Anda akan mendapatkan hasil tabel seperti deskripsi berikut:
mysql> DESC data_kampus; +--------------+-------------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+-------------------------+------+-----+---------+-------+ | kd_kampus | varchar(4) | | PRI | | | | kd_jenis | char(3) | | | | | | nm_kampus | varchar(35) | | | | | | thn_berdiri | varchar(4) | | | 0 | | | jum_fakultas | int(2) | | | 0 | | | domisili | varchar(35) | | | | | | status | enum('NEGRI','SUWASTA') | | | NEGRI | | +--------------+-------------------------+------+-----+---------+-------+ 7 rows in set (0.00 sec)

2.3 Memasukan Data dengan Perintah INSERT


Perintah INSERT digunakan untuk memasukan data kedalam tabel tertentu.dengan menggunakan perintah ini Anda dapat menambah data baru kedalam tabel yang masih kosong ataupun tabel yang telah berisi. Berikut pembahasannya:

2.3.1 Memasukan Data Satu Record


Sebenarnya penggunaan perintah INSERT sangat sederhana, yaitu dengan mendefinisikan nama kolom apa saja yang hendak dimasuki data. Berikut adalah gambaran sintaksnya:
Sintaks INSERT INTO namatabel (koloma, kolomb, .., kolomn) VALUES (isi_koloma,isi_kolomb,..,isi_kolomn);

22

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

Dengan menggunakan sintask diatas, maka kita dapat memasukan data baru kedalam tabel jenis_kampus dengan cara :
mysql> INSERT INTO jenis_kampus(kd_jenis,nm_jenis) -> VALUES ('J01','Universitas'); Query OK, 2 row affected (0.01 sec)

Apabila semua kolom didalam tabel tersebut akan dimasuki data ( tidak memilih sebagai kolom), maka Anda tidak harus menunjuk nama kolom yang hendak dimasuki. Sehingga, perintah yang dapat digunakan adalah:
mysql> INSERT INTO jenis_kampus (kd_jenis,nm_jenis) -> VALUES ('J01','Universitas'); Query OK, 2 row affected (0.01 sec)

2.3.2 Memasukan Data Beberapa Record


Pada cara sebelumnya kita hanya memasukan data untuk satu recor ( satu barus ) saja, sebenarnya untuk menghemat waktu kita dapat memasukan beberapa baris data secara bersamaan. Caranya tidak terlalu silit, berikut adalah caranya:
mysql> INSERT INTO jenis_kampus VALUES -> ('J02','Institut'), -> ('J03','Sekolah Tinggi Manajamen Informatikan dan -> Komputer (STMIK)'), -> ('J04','Akademi Manajemen Informatika dan Komputer (AMIK)'), -> ('J05','Akademi Pariwisata'), -> ('J06','Politeknik'); Query OK, 6 rows affected (0.01 sec)

Dengan cara diatas kita memasukan 6 baris data secara bersama-sama dalam tabel jenis_kampus. Anda juga dapat memasukan lebih dari 6 data secara bersama-sama. Sekarang, untuk melengkapi isi data didalam tabel jenis_kampus dan data_kampus, Anda dapat memasukan data-datanya dengan menggunakan perintah:
INSERT INTO jenis_kampus VALUES ('J07','Sekolah Tinggi Bahasa Asing'); INSERT INTO jenis_kampus VALUES ('J08','Akademi Bahasa Asing (ABA)'); INSERT INTO jenis_kampus VALUES ('J09','Aakademi Keperawatan (AKPER)'); INSERT INTO jenis_kampus VALUES ('P10','Akademi Kebidanan (AKBID)'); INSERT INTO jenis_kampus VALUES ('J11','Sekolah Tinggi Ilmu Pertanian (STIPER)'); INSERT INTO jenis_kampus

23

BUNAFIT KOMPUTER
TOKO SKRIP PROGRAM REFERENSI TA SKRIPSI TESIS TI Klik aja : www.bunafit-komputer.com

VALUES ('P12','Sekolah Tinggi Ilmu Ekonomi (STIE)'); INSERT INTO jenis_kampus VALUES ('P13','Sekolah Tinggi Ilmu Kesehatan (STIKES)');

Selanjutnya, Anda dapat memasukan data-data kampus kedalam tabel data_kampus dengan menjalankan perintah berikut
INSERT INTO data_kampus VALUES ('UNIL','J01','Universitas Lampung (UNILA)','1975',8, 'Jl.Zainal Abidin, Bandar Lampung','NEGRI'); INSERT INTO data_kampus VALUES ('UBLL','J01', 'Universitas Bandar Lampung (UBL)','1983',4, 'Jl.Zainal Abidin, Bandar Lampung','SUWASTA'); INSERT INTO data_kampus VALUES ('DARJ','J03', 'Darmajaya','1997',3, 'Jl.ZA Pagar Alam, Bandar Lampung','SUWASTA'); INSERT INTO data_kampus VALUES ('DARW','J03','Darma Wacana', '2000',3,'Metro, Lampung Tengah','SUWASTA'); INSERT INTO data_kampus VALUES ('TEKN','J03', 'Teknokrat','2001',2,'Bandar Lampung','SUWASTA'); INSERT INTO data_kampus VALUES ('LAMT','J12','LamTim Way Jepara', '2001',2,'Way Jepara, Lampung Timur','SUWASTA');

berarti sampai saat ini didalam tabel jenis_kampus dan tabel data_kampus telah terisi beberapa baris data kampus dan jenis.

2.4 Menampilkan Data dengan Perintah SELECT


Perintah SELECT digunakan untuk menyeleksi atau memilih atau menampilkan sebagian atau semua data yang ada didalam sebuah kolom. Dalam database relasioal, perintah ini digunakan untuk mengambil data dari beberapa tabel yang berelasi. Berikut penjelasan lengkapnya:

2.4.1 Menampilkan Semua Data dan Semua Kolom


Dengan menggunakan cara biasa, perintah SELECT dapat digunakan untuk menampilkan semua data (kolom dan baris ) dari sebuah tabel. Parameter yang digunakan untuk menunjuk pada semua kolom adalah tanda bintang (*). Berikut adalah sintaksnya:
Sintaks SELECT * FROM namatabel;

24

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

Dengan menggunakan sintaks diatas, Anda dapat mencobanya untuk menampilkan semua data dari tabel jenis_kampus. Perhatikan hasilnya sebagai berikut:
mysql> SELECT * FROM jenis_kampus; +----------+------------------------------------------------------------+ | kd_jenis | nm_jenis | +----------+------------------------------------------------------------+ | J01 | Universitas | | J02 | Institut | | J03 | Sekolah Tinggi Manajamen Informatikan dan Komputer (STMIK) | | J04 | Akademi Manajemen Informatika dan Komputer (AMIK) | | J05 | Akademi Pariwisata | | J06 | Politeknik | | J07 | Sekolah Tinggi Bahasa Asing | | J08 | Akademi Bahasa Asing (ABA) | | J09 | Aakademi Keperawatan (AKPER) | | J10 | Akademi Kebidanan (AKBID) | | J11 | Sekolah Tinggi Ilmu Pertanian (STIPER) | | J12 | Sekolah Tinggi Ilmu Ekonomi (STIE) | | J13 | Sekolah Tinggi Ilmu Kesehatan (STIKES) | +----------+------------------------------------------------------------+ 13 rows in set (0.00 sec)

2.4.2 Menampilkan Satu Kolom


Selain menggunakan tanda bintang, Anda dapat langsung membaca direktori yang datanya hendak ditampilkan. Perhatikan gambarannya pada sintaks berikut:
Sintaks SELECT koloma,kolomb,kolomn FROM namatabel;

Sebagai contoh, Anda dapat menjalankan perintah berikut:


mysql> SELECT nm_jenis FROM jenis_kampus; +------------------------------------------------------------+ | nm_jenis | +------------------------------------------------------------+ | Universitas | | Institut | | Sekolah Tinggi Manajamen Informatikan dan Komputer (STMIK) | | Akademi Manajemen Informatika dan Komputer (AMIK) | | Akademi Pariwisata | | Politeknik | | Sekolah Tinggi Bahasa Asing | | Akademi Bahasa Asing (ABA) | | Aakademi Keperawatan (AKPER) | | Akademi Kebidanan (AKBID) | | Sekolah Tinggi Ilmu Pertanian (STIPER) | | Sekolah Tinggi Ilmu Ekonomi (STIE) | | Sekolah Tinggi Ilmu Kesehatan (STIKES) | +------------------------------------------------------------+ 13 rows in set (0.01 sec)

25

BUNAFIT KOMPUTER
TOKO SKRIP PROGRAM REFERENSI TA SKRIPSI TESIS TI Klik aja : www.bunafit-komputer.com

Pada contoh diatas kita hanya menampilkan data-data pada kolom nm_jenis saja. Sedangkan apabila hendak menampilkan semua kolom dengan cara menunjuk kolomnya, makan perintah yang dapat digunakan adalah:
mysql> SELECT kd_jenis,nm_jenis FROM jenis_kampus; +----------+------------------------------------------------------------+ | kd_jenis | nm_jenis | +----------+------------------------------------------------------------+ | J01 | Universitas | | J02 | Institut | .............. | J10 | Akademi Kebidanan (AKBID) | | J11 | Sekolah Tinggi Ilmu Pertanian (STIPER) | | J12 | Sekolah Tinggi Ilmu Ekonomi (STIE) | | J13 | Sekolah Tinggi Ilmu Kesehatan (STIKES) | +----------+------------------------------------------------------------+ 13 rows in set (0.00 sec)

2.4.3 Menampilkan Beberapa Kolom


Dengan menggunakan cara yang sama, kita dapat menampilkan hanya beberapa kolom saja dari tabel yang memiliki banyak kolom. Sebagai contoh, kita dapat menampilkan sebagian kolom dari tabel data_kampus. Perhatikan contoh berikut:
mysql> SELECT kd_kampus,nm_kampus,thn_berdiri FROM data_kampus; +-----------+----------------------------------+-------------+ | kd_kampus | nm_kampus | thn_berdiri | +-----------+----------------------------------+-------------+ | UNIL | Universitas Lampung (UNILA) | 1975 | | UBLL | Universitas Bandar Lampung (UBL) | 1983 | | DARJ | Darmajaya | 1997 | | DARW | Darma Wacana | 2000 | | TEKN | Teknokrat | 2001 | | LAMT | LamTim Way Jepara | 2001 | +-----------+----------------------------------+-------------+ 6 rows in set (0.00 sec)

2.4.4 Menampilkan Beberapa Kolom Secara Acak


Sebenarnya Anda tidak harus menampilkan dengan cara kolom terurut, akan tetapi Anda dapat melakukan penyeleksian data dengan kolom yang tidak urut atau acak. Sebagai contoh, kita masih akan menggunakan tabel data_kampus. Berikut contohnya:
mysql> SELECT nm_kampus,kd_kampus,thn_berdiri FROM data_kampus;
+----------------------------------+-----------+-------------+ | nm_kampus | kd_kampus | thn_berdiri | +----------------------------------+-----------+-------------+ | Universitas Lampung (UNILA) | UNIL | 1975 | | Universitas Bandar Lampung (UBL) | UBLL | 1983 | | Darmajaya | DARJ | 1997 | | Darma Wacana | DARW | 2000 | | Teknokrat | TEKN | 2001 | | LamTim Way Jepara | LAMT | 2001 | +----------------------------------+-----------+-------------+

26

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

6 rows in set (0.01 sec)

2.5 Mengubah Data dengan Perintah UPDATE


Sekarang kita akan belajar menggunakan perintah UPDATE. Sesuai dengan namanya, perintah ini digunakan untuk mengupdate atau memperbarui data menjadi data terkini. Untuk menggunakan perintah ini, Anda dapat melihat sintaks berikut:

Sintaks UPDATE namatabel SET koloma=databaru, Kolomb=databaru, .., kolomn=databaruken WHERE kolomkunci=kodebaris;

Pada sintak diatas, pernyataan WHERE dengan satu kondisi berarti data yang hendak diperbarui hanya satu baris. Sekarang kita coba saja perintahnya dengan sintaks diatas, akan tetapi sebelumnya kita lihat dulu isi data pada tabel target. Berikut perintahnya:
mysql> SELECT * FROM jenis_kampus; +----------+------------------------------------------------------------+ | kd_jenis | nm_jenis | +----------+------------------------------------------------------------+ | J01 | Universitas | | J02 | Institut | ......... | J07 | Sekolah Tinggi Bahasa Asing | | J08 | Akademi Bahasa Asing (ABA) | | J09 | Aakademi Keperawatan (AKPER) | | J10 | Akademi Kebidanan (AKBID) | | J11 | Sekolah Tinggi Ilmu Pertanian (STIPER) | | J12 | Sekolah Tinggi Ilmu Ekonomi (STIE) | | J13 | Sekolah Tinggi Ilmu Kesehatan (STIKES) | +----------+------------------------------------------------------------+ 13 rows in set (0.01 sec)

dengan melihat isi tabel jenis_kampus diatas, maka apabila hendak merubah jenis kampus dari Sekolah Tinggi Bahasa Asing menjadi Sekolah Tinggi Bahasa Asing (STBA), maka perintah yang dapat digunakan adalah:
mysql> UPDATE jenis_kampus SET -> nm_jenis='Sekolah Tinggi Bahasa Asing (STBA)' -> WHERE kd_jenis='J07'; Query OK, 1 row affected (0.00 sec)

Pada perintah diatas, pernyataan WHERE kd_jenis='J07' berguna untuk menunjuk baris yang memiliki kode =J07 untuk diedit. Sehingga dengan perintah tersebut akan mengakibatkan perubahan seperti berikut:

27

BUNAFIT KOMPUTER
TOKO SKRIP PROGRAM REFERENSI TA SKRIPSI TESIS TI Klik aja : www.bunafit-komputer.com

mysql> SELECT * FROM jenis_kampus; +----------+------------------------------------------------------------+ | kd_jenis | nm_jenis | +----------+------------------------------------------------------------+ | J01 | Universitas | | J02 | Institut | ...... | J07 | Sekolah Tinggi Bahasa Asing (STBA) | | J08 | Akademi Bahasa Asing (ABA) | | J09 | Aakademi Keperawatan (AKPER) | | J10 | Akademi Kebidanan (AKBID) | | J11 | Sekolah Tinggi Ilmu Pertanian (STIPER) | | J12 | Sekolah Tinggi Ilmu Ekonomi (STIE) | | J13 | Sekolah Tinggi Ilmu Kesehatan (STIKES) | +----------+------------------------------------------------------------+ 13 rows in set (0.01 sec)

Apabila dama perintah tidak menggunakan kondisi ( WHERE kondisi ), maka perubahan akan diterapkan semuanya pada kolom yang dituju, sehingga kolomnya akan memiliki data yang kembar. Hati-hatilah dalam menggunakan perintah ini.

2.6 Menghapus Data dengan Perintah DELETE


Sekarang kita akan belajar mengenai perintah DELETE. Perintah ini digunakan untuk menghilangkan atau menghapus sebagian atau semua data yang ada di suatu tabel. Seperti halnya dengan perintah UPDATE, untuk menggunakan perintah DELETE juga diperlukan klausa WHERE untuk menunjuk baris mana yang hendak dihilangkan. Sintaks dasar perintah DELETE dapat dilihat dibawah ini.
Sintaks DELETE FROM namatabel WHERE kolomkunci=kunci;

Dengan mengguankan sintaks diatas, maka Anda dapat menggunakannya untuk menghapus salah satu baris data yang ada didalam tabel jenis_kampus. Misalnya kita akan menghapus data pada baris ke 12, yaitu kodenya (J12), maka perintahnya adalah:
mysql> DELETE FROM jenis_kampus WHERE kd_jenis='J12'; Query OK, 1 row affected (0.01 sec)

Dengan menggunakan perintah diatas, maka perubahan datanya dapat dilihat :


mysql> SELECT * FROM jenis_kampus; +----------+------------------------------------------------------------+ | kd_jenis | nm_jenis | +----------+------------------------------------------------------------+

28

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

| J01 | Universitas | | J02 | Institut | | J03 | Sekolah Tinggi Manajamen Informatikan dan Komputer (STMIK) | | J04 | Akademi Manajemen Informatika dan Komputer (AMIK) | | J05 | Akademi Pariwisata | | J06 | Politeknik | | J07 | Sekolah Tinggi Bahasa Asing (STBA) | | J08 | Akademi Bahasa Asing (ABA) | | J09 | Aakademi Keperawatan (AKPER) | | J10 | Akademi Kebidanan (AKBID) | | J11 | Sekolah Tinggi Ilmu Pertanian (STIPER) | | J13 | Sekolah Tinggi Ilmu Kesehatan (STIKES) | +----------+------------------------------------------------------------+ 12 rows in set (0.00 sec)

Perhatikan pada hasil seleksi terakhir dari tabel jenis_kampus diatas, apabila dilihat maka data jenis Sekolah Tinggi Ilmu Ekonomi (STIE) telah terhapus dari tabel.

Apabila dama perintah tidak menggunakan kondisi ( WHERE kondisi ), maka semua data yang ada didalam tabel akan terhapus. Hal tersebut sama artinya dengan mengosongkan tabel.

2.7 Fungsi Pengelompokan Data


Pada subbab ini Anda akan kami perkenalkan dengan beberapa fungsi pengelompokan. Artinya, perintah-perintah yang ada digunakan untuk menhasilkan data dari kumpulan baris yang ada didalam tabel atau beberapa tabel.

2.7.1 Dasar Menggunakan Fungsi COUNT


Fungsi COUNT digunakan untuk menghitung jumlah baris data yang terekam didalam tabel. Apabila menggunakan kondisi, maka yang dihitung hanya yang memenuhi kondisi saja. Berikut adalah sintaksnya:
Sintaks SELECT COUNT (kolom | *) FROM namatabel;

Anda dapat menggunakan kunci kolom maupun bintang (*), contohnya dapat dilihat pada perintah berikut:
mysql> SELECT COUNT(*) FROM data_kampus; +----------+ | COUNT(*) | +----------+ | 6 | +----------+ 1 row in set (0.00 sec)

29

BUNAFIT KOMPUTER
TOKO SKRIP PROGRAM REFERENSI TA SKRIPSI TESIS TI Klik aja : www.bunafit-komputer.com

Pada perintah diatas kita menghitung jumlah baris yang ada didalam tabel data_kampus, hasilnya menunjukan 6, berarti total record pada tabel data_kampus berjumlah 6. contoh yang lain apabila menggunakna kondisi:
mysql> SELECT COUNT(*) FROM data_kampus WHERE kd_kampus ='UNIL'; +----------+ | COUNT(*) | +----------+ | 1 | +----------+ 1 row in set (0.00 sec)

2.7.2 Menggunakan Fungsi GROUP BY


Fungsi GROUP BY digunakan untuk mengelompokan record berdasarkan kolomnya. Dengan menggunakan fungsi ini, maka dalam hasil seleksi tidak akan menampilkan data yang sama. Semua data yang ditampilkan akan berbeda menurut data yang dikelompokan. Contohnya sebagai berikut:
mysql> SELECT kd_kampus,nm_kampus,kd_jenis FROM data_kampus ; +-----------+----------------------------------+----------+ | kd_kampus | nm_kampus | kd_jenis | +-----------+----------------------------------+----------+ | UNIL | Universitas Lampung (UNILA) | P01 | | UBLL | Universitas Bandar Lampung (UBL) | P01 | | DARJ | Darmajaya | P03 | | DARW | Darma Wacana | P03 | | TEKN | Teknokrat | P03 | | LAMT | LamTim Way Jepara | P13 | +-----------+----------------------------------+----------+ 6 rows in set (0.00 sec)

Penggunaan GROUP BY :
mysql> SELECT kd_kampus,nm_kampus,kd_jenis FROM data_kampus -> GROUP BY kd_jenis; +-----------+-----------------------------+----------+ | kd_kampus | nm_kampus | kd_jenis | +-----------+-----------------------------+----------+ | UNIL | Universitas Lampung (UNILA) | P01 | | DARJ | Darmajaya | P03 | | LAMT | LamTim Way Jepara | P13 | +-----------+-----------------------------+----------+ 3 rows in set (0.01 sec)

Perhatikan hasil penggunaan GROUP BY pada query diatas. Kita hanya mendapatkan hasil sebanyak 3 baris, karena yang digunakan untuk mengelompokan adalah data pada kolom kd_jenis, sehingga tidak akan ada data kd_jenis yang kembar.

30

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

2.7.3 Menggunakan Fungsi MAX


Fungsi MAX digunakan untuk mencari nilai Maximal dari record ( baris data ) yang ada didalam tabel. Sebagai contoh, Anda dapat menjalankan perintah berikut:
mysql> SELECT MAX(jum_fakultas) FROM data_kampus; +-------------------+ | MAX(jum_fakultas) | +-------------------+ | 8 | +-------------------+ 1 row in set (0.00 sec)

2.7.4 Menggunakan Fungsi MIN


Fungsi MIN digunakan untuk mencari nilai Minimal dari record yang ada didalam tabel. Untuk lebih jelasnya, Anda dapat melihat contoh berikut:
mysql> SELECT MIN(jum_fakultas) FROM data_kampus; +-------------------+ | MIN(jum_fakultas) | +-------------------+ | 2 | +-------------------+ 1 row in set (0.00 sec)

2.7.5 Menggunakan Fungsi SUM


Fungsi SUM dapat kita gunakan untuk menjumlahkan semua nilai berupa angka yang ada didalam setiap record data, data yang dijumlahkan hanya pada kolom yang ditunjuk. Untuk lebih jelasnya, Anda dapat melihat contoh berikut:
mysql> SELECT SUM(jum_fakultas) FROM data_kampus; +-------------------+ | SUM(jum_fakultas) | +-------------------+ | 22 | +-------------------+ 1 row in set (0.00 sec)

2.8 Mengurutkan Data dengan ORDER BY


Pada subbab ini Anda akan kami perkenalkan dengan perintah ORDER BY, yaitu perintah yang digunakan untuk mengurutkan data. Berikut pembahasannya:

2.8.1 Mengurutkan Data Tanpa Parameter


ORDER BY digunakan untuk mengurutkan data yang diseleksi/ditampilkan dengan perintah SELECT. Anda dapat menulikannya dengan cara ORDER BY namakolom, dengan cara tersebut maka data akan diurutkan secara urut naik ( Ascending ).

31

BUNAFIT KOMPUTER
TOKO SKRIP PROGRAM REFERENSI TA SKRIPSI TESIS TI Klik aja : www.bunafit-komputer.com

Sebagai contoh, kita akan menampilkan semua data yang ada didalam tabel data_kampus. Untuk melihat perubahannya, pertama kita akan menampilkan kondisi awal dari tabel data_kampus. Perhatikan perintah dan hasilnya sebagai berikut:
mysql> SELECT kd_kampus,kd_jenis,nm_kampus,jum_fakultas -> FROM data_kampus ; +-----------+----------+----------------------------------+--------------+ | kd_kampus | kd_jenis | nm_kampus | jum_fakultas | +-----------+----------+----------------------------------+--------------+ | UNIL | P01 | Universitas Lampung (UNILA) | 8 | | UBLL | P01 | Universitas Bandar Lampung (UBL) | 4 | | DARJ | P03 | Darmajaya | 3 | | DARW | P03 | Darma Wacana | 3 | | TEKN | P03 | Teknokrat | 2 | | LAMT | P13 | LamTim Way Jepara | 2 | +-----------+----------+----------------------------------+--------------+ 6 rows in set (0.00 sec)

Hasil diatas merupakan tampilan dengan perintah tanpa pengurutan, sekarang apabila kita hendak mengurutkan datanya berdasarkan kolom kd_kampus. Maka perintah yang dapat digunakan adalah:
mysql> SELECT kd_kampus,kd_jenis,nm_kampus,jum_fakultas -> FROM data_kampus ORDER BY kd_kampus; +-----------+----------+----------------------------------+--------------+ | kd_kampus | kd_jenis | nm_kampus | jum_fakultas | +-----------+----------+----------------------------------+--------------+ | DARJ | P03 | Darmajaya | 3 | | DARW | P03 | Darma Wacana | 3 | | LAMT | P13 | LamTim Way Jepara | 2 | | TEKN | P03 | Teknokrat | 2 | | UBLL | P01 | Universitas Bandar Lampung (UBL) | 4 | | UNIL | P01 | Universitas Lampung (UNILA) | 8 | +-----------+----------+----------------------------------+--------------+ 6 rows in set (0.00 sec)

2.8.2 Mengurutkan Data dengan Parameter DESC


Pada keperluan tertentu pasti Anda akan menginginkan bahwa data Anda dapat tampil dengan urutan terbalik ( dari nilai besar ke nilai kecil ), masalah tersebut dapat Anda selesaikan dengan menggunakan parameter DESC setelah nama kolom yang hendak diurutkan. Untuk lebih jelasnya, Anda dapat menjalankan perintah berikut:
mysql> SELECT kd_kampus,kd_jenis,nm_kampus,jum_fakultas -> FROM data_kampus ORDER BY jum_fakultas DESC; +-----------+----------+----------------------------------+--------------+ | kd_kampus | kd_jenis | nm_kampus | jum_fakultas | +-----------+----------+----------------------------------+--------------+ | UNIL | P01 | Universitas Lampung (UNILA) | 8 | | UBLL | P01 | Universitas Bandar Lampung (UBL) | 4 | | DARJ | P03 | Darmajaya | 3 | | DARW | P03 | Darma Wacana | 3 | | TEKN | P03 | Teknokrat | 2 | | LAMT | P13 | LamTim Way Jepara | 2 | +-----------+----------+----------------------------------+--------------+ 6 rows in set (0.00 sec)

32

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

Dengan perintah diatas, Anda dapat melihat perubahannya pada kolom yang diurutkan, yaitu kolom jum_fakultas. Pada kolom jum_fakultas nilai jumlahnya diurutkan dari nilai yang paling besar sampai pada nilai yang lebih kecil.

2.8.3 Mengurutkan Data dengan Parameter ASC


Apabila parameter DESC digunakan untuk mengurutkan secara urut terbalik (Descending), maka Anda dapat menggunakan perintah ASC untuk mengurutkan data secara Ascending. Sebagai contoh, kita akan mengurutkan data pada tabel data_kampus, data yang diturutkan adalah jum_fakultas. Berikut perintah dan hasilnya:
mysql> SELECT kd_kampus,kd_jenis,nm_kampus,jum_fakultas -> FROM data_kampus ORDER BY jum_fakultas ASC; +-----------+----------+----------------------------------+--------------+ | kd_kampus | kd_jenis | nm_kampus | jum_fakultas | +-----------+----------+----------------------------------+--------------+ | TEKN | P03 | Teknokrat | 2 | | LAMT | P13 | LamTim Way Jepara | 2 | | DARJ | P03 | Darmajaya | 3 | | DARW | P03 | Darma Wacana | 3 | | UBLL | P01 | Universitas Bandar Lampung (UBL) | 4 | | UNIL | P01 | Universitas Lampung (UNILA) | 8 | +-----------+----------+----------------------------------+--------------+ 6 rows in set (0.00 sec)

2.9 Menggunakan Fungsi String


Pada subbab ini Anda akan belajar untuk menggunakan fungsi-fungsi yang berkaitan dengan pengambilan bagian data string. Untuk lebih jelasnya, ikutilah pembahasan berikut:

2.9.1 Menggunakan Fungsi LEFT


Fungsi LEFT digunakan untuk mengambil bagian data dari sebelah kiri karakter, jumlah karakter yang diambil dapat ditentukan didalamnya. Perhatikan contoh pengambilan data nama kampus sebanyak 5 digit dari kiri berikut:
mysql> SELECT kd_kampus, nm_kampus, LEFT(nm_kampus,5) FROM data_kampus; +-----------+----------------------------------+-------------------+ | kd_kampus | nm_kampus | LEFT(nm_kampus,5) | +-----------+----------------------------------+-------------------+ | UNIL | Universitas Lampung (UNILA) | Unive | | UBLL | Universitas Bandar Lampung (UBL) | Unive | | DARJ | Darmajaya | Darma | | DARW | Darma Wacana | Darma | | TEKN | Teknokrat | Tekno | | LAMT | LamTim Way Jepara | LamTi | +-----------+----------------------------------+-------------------+ 6 rows in set (0.02 sec)

33

BUNAFIT KOMPUTER
TOKO SKRIP PROGRAM REFERENSI TA SKRIPSI TESIS TI Klik aja : www.bunafit-komputer.com

2.9.2 Menggunakan Fungsi MID


Fungsi LEFT digunakan untuk mengambil bagian data dari sebelah tengah karakter, karakter mulai dan jumlah karakter yang diambil dapat ditentukan didalamnya. Perhatikan contoh pengambilan data nama kampus sebanyak 4 digit dari digit ke-5 berikut:
mysql> SELECT kd_kampus, nm_kampus, MID(nm_kampus,5,4) FROM data_kampus; +-----------+----------------------------------+--------------------+ | kd_kampus | nm_kampus | MID(nm_kampus,5,4) | +-----------+----------------------------------+--------------------+ | UNIL | Universitas Lampung (UNILA) | ersi | | UBLL | Universitas Bandar Lampung (UBL) | ersi | | DARJ | Darmajaya | ajay | | DARW | Darma Wacana | a Wa | | TEKN | Teknokrat | okra | | LAMT | LamTim Way Jepara | im W | +-----------+----------------------------------+--------------------+ 6 rows in set (0.01 sec)

2.9.3 Menggunakan Fungsi RIGHT


Fungsi LEFT digunakan untuk mengambil bagian data dari sebelah kanan karakter, jumlah karakter yang diambil dapat ditentukan didalamnya. Perhatikan contoh pengambilan data nama kampus sebanyak 6 digit dari kanan berikut:
mysql> SELECT kd_kampus, nm_kampus, RIGHT(nm_kampus,6) FROM data_kampus; +-----------+----------------------------------+--------------------+ | kd_kampus | nm_kampus | RIGHT(nm_kampus,6) | +-----------+----------------------------------+--------------------+ | UNIL | Universitas Lampung (UNILA) | UNILA) | | UBLL | Universitas Bandar Lampung (UBL) | (UBL) | | DARJ | Darmajaya | majaya | | DARW | Darma Wacana | Wacana | | TEKN | Teknokrat | nokrat | | LAMT | LamTim Way Jepara | Jepara | +-----------+----------------------------------+--------------------+ 6 rows in set (0.00 sec)

2.9.4 Menggunakan Fungsi LENGTH


Fungsi LENGTH digunakan untuk menghitung jumlah digit dari karakter yang ada didalam kolom tertentu. Penggunaan fungsi ini akan menjadikan white space ( spasi kosong ) sebagai karakter satu digit. Untuk lebih jelasnya, berikut adalah perintah untuk menghitung jumlah digit karakter pada kolom nama kampus.
mysql> SELECT kd_kampus, nm_kampus, LENGTH(nm_kampus) FROM data_kampus; +-----------+----------------------------------+-------------------+ | kd_kampus | nm_kampus | LENGTH(nm_kampus) | +-----------+----------------------------------+-------------------+ | UNIL | Universitas Lampung (UNILA) | 27 | | UBLL | Universitas Bandar Lampung (UBL) | 32 | | DARJ | Darmajaya | 9 | | DARW | Darma Wacana | 12 | | TEKN | Teknokrat | 9 |

34

Free eBooks
Penulis : Bunafit Nugroho Email / YM : bunafit_linux@yahoo.com

| LAMT | LamTim Way Jepara | 17 | +-----------+----------------------------------+-------------------+ 6 rows in set (0.02 sec)

2.9.5 Menggunakan Fungsi UCASE


Fungsi UCASE dapat digunakan untuk mengkonversi semua huruf kecil dari sebuah kolom tampil menjadi huruf besar (kapital). Sebagai contoh, Anda dapat menggunakan perintah berikut:
SELECT kd_kampus, nm_kampus, UCASE(nm_kampus) FROM data_kampus;

DAFTAR PUSTAKA Pelajaran Lanjutan Baca pada 2 Buku ini

Judul : Panduan Lengkap Menguasai Judul : Database Relasional dengan Perintah SQL ( Buku Wajib MySQL ( Buku Pegangan Mahasiswa ) Programmer ) Penerbit : ANDI, Yogyakarta Penerbit : MediaKita, Jakarta Penulis : Bunafit Nugroho Penulis : Bunafit Nugroho