MODUL
Disusun Oleh:
Dewi Rahmah, S.Pd
Guru Mata Pelajaran
Daftar Isi
A. Pendahuluan. ........................................................................................................................ 1
1. Create. ................................................................................................................................ 10
2. Alter. ................................................................................................................................... 13
3. Drop. ................................................................................................................................... 16
4. Constraint .......................................................................................................................... 17
1. Insert................................................................................................................................... 19
2. Select. ................................................................................................................................. 21
3. Where. ................................................................................................................................ 22
5. Alias..................................................................................................................................... 26
7. Delete. ................................................................................................................................ 30
8. Update. ............................................................................................................................... 30
9. Union .................................................................................................................................. 31
Mungkin tanpa kalian sadari kamu selalu berurusan dengan database, misalnya :
• Saat kamu mengambil gambar dan mengunggahnya ke akun jejaring sosial seperti
Facebook atau Instagram, maka kamu telah berurusan dengan database dimana
data foto yang telah diunggah disimpan ke dalam database.
• Saat kamu menelusuri situs web e-commerce seperti bukalapak untuk membeli
laptop, sepatu, pakaian, dll. Maka kamu telah berurusan dengan database.
Data berhubungan satu sama lain, misalnya Provinsi terdiri dari beberapa
kabupaten/kota yang berelasi. Oleh karena itu kita menggunakan istilah relational
database.
Dalam relational database, kita memodelkan data seperti Provinsi, Kabupaten, dll,
menggunakan tabel. Sebuah tabel berisi kolom dan baris seperti pada spreadsheet
(contohnya tabel pada Microsoft Excel).
Karena kita berurusan dengan dengan sejumlah besar data, kita memerlukan cara
untuk mendefinisikan database, tabel, dan lain-lain, dan mengolah data dengan lebih
efisien. Selain itu, kita ingin mengubah data menjadi informasi.
1
KeDai Computerworks
b. Data Manipulation Language (DML) berisi pernyataan yang memungkinkan kamu
untuk memperbarui (update) dan queri (query) data.
c. Data Control Language (DCL) memungkinkan kamu memberi izin kepada pengguna
untuk mengakses data tertentu dalam database.
MySQL bisa berjalan di berbagai platform UNIX, Linux, Windows, dll. Kamu bisa
menginstalnya di server atau bahkan di desktop.
Cara resmi untuk mengucapkan MySQL adalah “My Ess Que Ell”, bukan “My Sequel”.
2
KeDai Computerworks
b. Buka file WAMP/LAMP.
d. Hilangkan tanda centang pada checkbox komponen framework, lalu klik Next
3
KeDai Computerworks
e. Pilih folder untuk menginstall WAMP, lalu klik next.
User : root
Password : 123456
4
KeDai Computerworks
g. Selanjutnya hilangkan tanda centang pada Wampstack/Lampstack Cloud, lalu
klik next.
5
KeDai Computerworks
i. Setelah proses menginstall selesai, maka akan muncul Bitnami WAMP Stack
Manager, klik tab Manage Server untuk mengatur atau melihat status server.
6
KeDai Computerworks
j. Buka System Properties lalu klik Environment Variables.
Jika kamu belum tahu cara membuka System Properties silahkan kunjungi :
https://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-
command-line-access/
7
KeDai Computerworks
l. Klik tombol New.
8
KeDai Computerworks
2. Login ke MySQL Terminal/Command Prompt.
Penjelasan :
Tekan Enter lalu ketikkan password yang telah kamu buat pada proses menginstall,
misalnya 123456
3. SQL Syntax.
a. Spasi yang tidak signifikan umumnya diabaikan dalam pernyataan SQL dan query,
sehingga lebih mudah untuk memformat kode SQL agar mudah dibaca.
b. SQL tidak bersifat case sensitive, perintah SELECT sama dengan select.
c. Pernyataan SQL juga menyertakan titik koma ( ; ), sebagai tanda untuk mengakhiri
sebuah pernyataan (statement).
9
KeDai Computerworks
4. Menampilkan daftar database.
a. Membuat database.
Sintaksis :
mysql> CREATE DATABASE nama_database;
10
KeDai Computerworks
b. Memilih database.
Pertama, lihatlah daftar database menggunakan perintah show databases;
11
KeDai Computerworks
d. Membuat tabel.
Sintaksis :
mysql> CREATE TABLE nama_database
-> (
-> nama_kolom1 tipe_data(ukuran) [tipe_constraint],
-> nama_kolom1 tipe_data(ukuran) [tipe_constraint],
...
-> );
Sintaksis :
mysql> DESC nama_tabel;
12
KeDai Computerworks
2. Alter.
13
KeDai Computerworks
b. Menghapus kolom dari tabel
Sintaksis :
mysql> ALTER TABLE nama_tabel
-> DROP nama_kolom;
Sintaksis :
14
KeDai Computerworks
Deskripsi tabel konsentrasi setelah Primary Key dihapus, perhatikan field id,
pada kolom Key tidak terdapat nilai PRI sebagai tanda bahwa field id adalah
Primary Key.
Sintaksis :
15
KeDai Computerworks
Deskripsi tabel konsentrasi setelah Primary Key ditambahkan, perhatikan field
id, pada kolom Key terdapat nilai PRI sebagai tanda bahwa field id adalah Primary
Key.
3. Drop.
a. Menghapus database.
• Drop database akan menghapus database dan semua komponen yang ada di
dalamnya.
• Untuk menghapus database, kamu harus mempunyai hak akses sebagai admin,
secara default user root mempunyai hak akses sebagai admin.
• Untuk memastikan jika database telah terhapus kamu bisa menjalankan perintah
SHOW DATABASES; .
Sintaksis :
16
KeDai Computerworks
b. Menghapus Tabel.
• Semua data yang ada dalam tabel juga akan terhapus.
• Tabel termasuk datanya tidak bisa dikembalikan ketika operasi penghapusan
telah dilakukan.
Sintaksis :
4. Constraint
• NOT NULL
Menandakan bahwa kolom tidak dapat menyimpan nilai null (kosong).
• PRIMARY KEY
Kunci utama memiliki nilai unik yang berbeda untuk setiap baris dalam sebuah tabel,
jadi tidak ada dua buah baris tabel Primary Key yang pesis sama.
17
KeDai Computerworks
• FOREIGN KEY
Menangani referensi data dalam satu tabel agar sesuai dengan nilai pada tabel lain.
Bersama-sama, Primary Key dan Foreign Key menciptakan hubungan seperti orang
tua/anak.
Sebuah tabel dapat berisi lebih dari satu Foreign Key jika berhubungan dengan lebih
dari satu tabel lainnya.
Sintaksis :
Untuk membuat tabel peserta yang berelasi dengan tabel konsentrasi ketikkan
perintah berikut :
18
KeDai Computerworks
Atau
19
KeDai Computerworks
Untuk menginput data pada tabel konsentrasi, ketikkan perintah berikut :
Atau menginput data multi baris pada tabel konsentrasi, ketikkan perintah berikut :
Pada kolom keempat pada tabel peserta (kolom idkonsentrasi) nilainya harus sama
dengan nilai data pada tabel konsentrasi kolom pertama (kolom id).
20
KeDai Computerworks
2. Select.
Pernyataan SELECT mengambil data dari database dan mengembalikan nilainya dalam
bentuk query.
Sintaksis :
mysql> SELECT * FROM nama_tabel;
• Select Distinct.
Untuk menampilkan data pada suatu kolom dan menghilangkan baris yang
berduplikat.
Sintaksis :
mysql> SELECT DISTINCT(nama_kolom) FROM nama_tabel;
21
KeDai Computerworks
3. Where.
Klausa WHERE terdiri dari kata kunci WHERE diikuti oleh kondisi pencarian yang
menentukan baris yang akan diambil.
Sintaksis :
mysql> SELECT nama_kolom
-> FROM nama_tabel;
-> WHERE nama_kolom [ekspresi(=,>, ...)] nilai;
Untuk menampilkan kolom noreg,nama pada tabel peserta dimana noreg = 101,
ketikkan perintah berikut :
22
KeDai Computerworks
• Set Membership Test (IN).
Ini menguji apakah nilai data cocok dengan salah satu daftar nilai target.
Sintaksis :
mysql> SELECT nama_kolom FROM nama_tabel
-> WHERE nama_kolom IN(nilai1,nilai2,...);
Untuk menampilkan kolom pada tabel peserta dimana datanya berada di nilai 3 dan
5, ketikkan perintah berikut :
Menguji apakah nilai data ada di antara dua nilai yang ditentukan.
Sintaksis :
mysql> SELECT nama_kolom
-> FROM nama_tabel
-> WHERE nama_kolom BETWEEN nilai1 AND nilai2;
23
KeDai Computerworks
Karakter wilcard :
a. Tanda persen ( % ) mencocokkan beberapa karakter.
b. Tanda underscore ( _ ) mencocokkan satu karakter.
Sintaksis :
mysql> SELECT nama_kolom
-> FROM nama_tabel
-> WHERE nama_kolom LIKE "%nilai%";
Untuk menampilkan kolom nama pada tabel peserta, dimana kolom nama
mengandung kata Nur pada kata yang dicari, ketikkan perintah berikut :
24
KeDai Computerworks
Sintaksis :
mysql> SELECT nama_kolom
-> FROM nama_tabel
-> WHERE nama_kolom LIKE "nilai_";
Untuk menampilkan kolom nama pada tabel peserta, dimana kolom nama
mengandung kata Nur pada kata yang dicari, ketikkan perintah berikut :
4. Order By.
Kamu dapat meminta SQL untuk mengurutkan hasil query dengan memasukkan klausa
ORDER BY dalam pernyataan SELECT. ORDER BY mengurutkan kata kunci dalam urutan
menaik secara default.
25
KeDai Computerworks
Sintaksis :
mysql> SELECT nama_kolom
-> FROM nama_tabel
-> ORDER BY nama_kolom [ASC atau DESC];
Untuk menampilkan kolom nama,jkel pada tabel peserta dan diurutkan secara menaik,
ketikkan perintah berikut :
5. Alias.
Kamu bisa memberi tabel atau kolom nama lain dengan menggunakan Alias. Ini sangat
berguna jika tabel atau nama kolom yang sangat panjang atau kompleks.
Sintaksis :
26
KeDai Computerworks
Alias untuk Kolom :
Untuk memberi nama tabel peserta dengan nama alias psrt, ketikkan perintah berikut :
Untuk memberi nama kolom nama pada tabel konsentrasi dengan nama alias
nama_konsentrasi, ketikkan perintah berikut :
27
KeDai Computerworks
6. Fungsi Kolom
Fungsi kolom SQL mengambil keseluruhan data kolom sebagai argumennya dan
menghasilkan satu item data yang merangkum seluruh kolom.
• Fungsi SUM().
Menghitung keseluruhan total pada kolom.
Sintaksis :
mysql> SELECT SUM(nama_kolom) FROM nama_tabel;
• Fungsi AVG().
Menghitung rata-rata keseluruhan pada kolom.
Sintaksis :
mysql> SELECT AVG(nama_kolom) FROM nama_tabel;
28
KeDai Computerworks
• Fungsi MIN() dan MAX().
Mencari nilai terkecil (MIN) dan terbesar (MAX) pada kolom.
Sintaksis MIN() :
mysql> SELECT MIN(nama_kolom) FROM nama_tabel;
Sintaksis MAX():
mysql> SELECT AVG(nama_kolom) FROM nama_tabel;
29
KeDai Computerworks
• Fungsi COUNT().
Fungsi COUNT() mengembalikan jumlah nilai dari kolom yang ditentukan. Nilai NULL
tidak akan dihitung.
7. Delete.
Sintaksis :
mysql> DELETE FROM nama_tabel
-> WHERE nama_kolom = nilai;
Untuk menghapus baris peserta dengan noreg 108 pada tabel peserta, ketikkan
perintah berikut :
8. Update.
Perintah UPDATE digunakan untuk mengubah data yang sudah ada pada tabel.
Sintaksis :
mysql> UPDATE nama_tabel
-> SET nama_kolom = nilai;
-> WHERE nama_kolom = nilai;
30
KeDai Computerworks
Untuk mengubah baris peserta dengan nama “Kanuddin” di mana noreg = 107 pada
tabel peserta, ketikkan perintah berikut :
9. Union
Operator UNION digunakan untuk menggabungkan hasil-set dari dua atau lebih
pernyataan SELECT.
Perhatikan bahwa setiap penyataan SELECT dan UNION harus memiliki jumlah kolom
yang sama
Selain itu, kolom di setiap pernyataan SELECT harus berada dalam urutan yang sama.
Sintaksis :
mysql> SELECT nama_kolom FROM nama_tabel1
-> UNION
-> SELECT nama_kolom FROM nama_tabel2;
Untuk menghapus baris peserta dengan noreg 108 pada tabel peserta, ketikkan
perintah berikut :
31
KeDai Computerworks
10. Join
Kata kunci JOIN digunakan dalam sebuah pernyataan SQL untuk query data dari dua atau
lebih tabel, berdasarkan hubungan antara kolom tertentu.
Tabel dalam database seringkali saling terkait dengan relasi Induk/anak (Primary/Foreign
Key).
Proses pembentukan pasangan baris dengan mencocokan isi kolom terkait disebut
menggabungkan tabel.
• Inner Join.
Mengembalikan baris ketika ada setidaknya satu nilai yang cocok pada kedua tabel.
Tabel1 Tabel2
32
KeDai Computerworks
Sintaksis :
mysql> SELECT nama_tabel1.kolom_tabel1, nama_tabel2.kolom_tabel2
-> FROM tabel1
-> INNER JOIN tabel2;
-> ON JOIN nama_tabel1.kolom_tabel1_PrimaryKey =
nama_tabel2.kolom_tabel2_PrimaryKey;
Untuk menggabungkan tabel peserta dan tabel konsentrasi dengan cara inner
join, ketikkan perintah berikut :
• Right Join
Tabel1 Tabel2
33
KeDai Computerworks
Mengembalikan semua baris dari tabel kanan (Tabel2), meski tidak ada yang cocok
di tabel kiri (Tabel1). Jika nilai pada kolom kanan tidak sesuai dengan kolom kiri, maka
nilai null ditampilkan di kolom kiri.
Sintaksis :
mysql> SELECT nama_tabel1.kolom_tabel1, nama_tabel2.kolom_tabel2
-> FROM tabel1
-> RIGHT JOIN tabel2;
-> ON JOIN nama_tabel1.kolom_tabel1_PrimaryKey =
nama_tabel2.kolom_tabel2_PrimaryKey;
Untuk menggabungkan tabel peserta dan tabel konsentrasi dengan cara right
join, ketikkan perintah berikut :
34
KeDai Computerworks
• Left Join
Tabel1 Tabel2
Mengembalikan semua baris dari tabel kiri (Tabel1), meski tidak ada yang cocok di
tabel kanan (Tabel2). Jika nilai pada kolom kiri tidak sesuai dengan kolom kanan,
maka nilai null ditampilkan di kolom kanan.
Tabel1 Tabel2
35
KeDai Computerworks
Mengembalikan semua baris di kedua tabel (Tabel1 dan Tabel2) tanpa
memperhatikan kecocokan apapun. Bila tidak ada kecocokan, sisi yang hilang akan
berisi null.
OUTER JOIN kurang berguna daripada Inner Join, Left Join atau Right Join dan tidak
diimplementasikan di MySQL. Namun, kamu dapat mencobanya menggunakan
UNION dari Left Join dan Right Join.
Sintaksis :
mysql> SELECT nama_tabel1.kolom_tabel1, nama_tabel2.kolom_tabel2
-> FROM tabel1
-> LEFT JOIN tabel2;
-> ON JOIN nama_tabel1.kolom_tabel1_PrimaryKey =
nama_tabel2.kolom_tabel2_PrimaryKey
-> UNION
-> SELECT nama_tabel1.kolom_tabel1, nama_tabel2.kolom_tabel2
-> FROM tabel1
-> RIGHT JOIN tabel2;
-> ON JOIN nama_tabel1.kolom_tabel1_PrimaryKey =
nama_tabel2.kolom_tabel2_PrimaryKey;
Untuk menggabungkan tabel peserta dan tabel konsentrasi dengan cara right
join, ketikkan perintah berikut :
36
KeDai Computerworks
37