0% menganggap dokumen ini bermanfaat (0 suara)
121 tayangan

Tutorial Mysql Database

Dokumen tersebut membahas konsep dasar basis data, termasuk definisi basis data dan data, fungsi data, komponen basis data seperti perangkat keras, sistem operasi, database management system, dan pengguna. Juga dibahas mengenai tujuan pembangunan basis data, abstraksi data, hirarki data, dan pengguna database. SQL dan contoh database relasional seperti MySQL juga dijelaskan secara singkat.
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
121 tayangan

Tutorial Mysql Database

Dokumen tersebut membahas konsep dasar basis data, termasuk definisi basis data dan data, fungsi data, komponen basis data seperti perangkat keras, sistem operasi, database management system, dan pengguna. Juga dibahas mengenai tujuan pembangunan basis data, abstraksi data, hirarki data, dan pengguna database. SQL dan contoh database relasional seperti MySQL juga dijelaskan secara singkat.
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 29

KONSEP DASAR BASIS DATA

 Basis data terdiri dari kata basis dan data.


 Basis bisa didefinisikan sebagai gudang
 Data adalah catatan atas kumpulan fakta dunia nyata yang mewakili objek, seperti
manusia, barang, hewan, konsep, peristiwa dan sebagainya yang diwujudkan dalam
bentuk huruf, angka, symbol, gambar, teks, bunyi atau kombinasinya.

Fungsi Data, adalah:


1. Data dapat berfungsi sebagai acuan dalam mengambil suatu keputusan dalam
pemecahan masalah
2. Data bisa dijadikan sebagai pedoman atau dasar suatu penelitian atau perencanaan
3. Data dapat berfungsi sebagai acuan dalam implementasi suatu kegiatan
4. Data berfungsi sebagai dasar untuk melakukan evaluasi terhadap suatu kegiatan.

Basis data adalah koleksi dari data-data yang terorganisasi sedemikian rupa sehingga data
mudah disimpan dan dimanipulasi (diperbaharui, dicari, diolah dengan perhitungan-
perhitungan tertentu, dan dihapus).

Database mempunyai delapan operasi dasar diantaranya adalah:


1. Create database 5. Insert
2. Drop database 6. Read
3. Create table 7. Update
4. Drop table 8. Delete

Komponen Basis Data:


1. Perangkat keras
2. Sistem operasi
3. Basis data
4. Database Management System (DBMS)
Program aplikasi khusus yang dirancang untuk membuat dan juga mengelola database
yang tersedia.
5. User
Komponen database yang berinteraksi langsung dengan database. Ada beberapa tipe
user, yaitu:
 Programmer aplikasi
 User mahir (casual user)
 User umum (end user)
 User khusus (specialized user)
6. Aplikasi atau perangkat lain
Aplikasi tergantung kebutuhan, pemakai basis data dibuatkan program khusus untuk
melakukan pengisian, pengubahan atau pengambilan data yang mudah dalam
pemakainannya.

Tujuan dibangun database, yaitu:


1. Kecepatan dan kemudahan (speed)
 Agar user dapat menyimpan data secara cepat
 Dapat melakukan manipulasi data dengan cepat
 Menampilkan kembali data akan lebih cepat dibandingakan dengan cara
primitive.
2. Efisiensi ruang penyimpanan (space)
 Dengan basis data kita mampu meminimalisir redudansi data.
 Membuat relasi antar data.
3. Keakuratan (Accuracy)
4. Ketersediaan (availability)
 Agar dapat digunakan oleh berbagai user.
5. Kelengkapan (Completeness)
 Data senantiasa lengkap, relative terhadap kebutuhan pemakai maupun waktu
dengan menambahkan baris-baris atau melakukan perubahan struktur pada
data
6. Keamanan (security)
7. Kebersamaan pemakai (Shareability)
 Data bisa di akses secara multiuser dalam waktu yang bersamaan
 Menghindari inconsistensi data
 Menghindari atau mengurangi kondisi dead-lock
Latihan.
Jelaskan penerapan basis data dalam dunia pendidikan, rumah sakit, dan perbangkan

Abstraksi Data
1. Peringkat fisik (terendah)
Mendeskripsikan struktur data yang digunakan, pola representasi bit, dll, yang akan
disimpan dalam penyimpanan fisik.
2. Peringkat logika
Mendeskripsikan data apa yang disimpan di basis data dan hubungan apa yang ada
antara data-data tersebut.
3. Peringkat pengguna (tertinggi)
Menyederhanakan interaksi pengguna dengan sistem dalam bentuk GUI dalam
aplikasi sistem basis data.

Hirarki Data
Data  elemen data  record  file/berkas
Keterangan:
 Elemen data : Satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain
yang bermakna. Istilah lainnya adalah field, kolom, item dan atribut.
 Record : Gabungan sejumlah elemen data yang saling terkait. Dalam sistem
basis data relasional, record biasa disebut dengan istilah tupel atau
baris (row)
 File / berkas : Himpunan seluruh record yang bertipe sama membentuk sebuah
berkas. Dalam sistem basis data relasional, file mewakili komponen
yang disebut tabel atau relasi

Pengguna Database
1. Database Administrator (DBA)
Adalah orang yang bertanggung jawab terhadap pengelolaan basis data. Tugas DBA
adalah:
 Mendeinisikan pola basis data
 Mendefinisikan struktur penyimpanan dan metode akses
 Memberikan kekuasaan pada user untuk mengakses data
 Memantau kinerja sistem
 Menentukan keamanan data
 Merencanakan backup dan recovery
2. Programmer
Adalah orang yang membuat aplikasi dan menghubungkan dengan database
3. Pengguna aplikasi
Adalah orang yang dapat memberikan perintah-perintah tambahan pada basis data.
4. Pengguna akhir
Adalah orang yang dapat menggunakan hasil aplikasi

Pengenalan DBMS
 DBMS adalah aplikasi yang digunakan untuk mengelola atau me-manage data.
 Tanpa menggunakan DBMS, untuk me-manage data, seperti data produk, data
customer, data penjualan, maka kita harus simpan data tersebut dalam bentuk file.
Misal: Seperti kita menggunakan Excel
 DBMS biasanya berjalan sebagai aplikasi yang berbasis server yang digunakan untuk
me-manage data, kita hanya tinggal memberi perintah ke DBMS untuk melakukan
proses manajemen datanya, seperti menambah, mengubah, menghapus atau
mengambil data.
 Contoh DBMS yang popular seperti MySQL, PostgreeSQL, MongoDB, Oracle, dan
lain-lain.

Pengenalan Relational Database


 Ada banyak sekali jenis-jenis DBMS, seperti Relational Database, Document
Database, Key-Value Database, dan lain-lain
 Namun yang masih popular dan kebanyakan orang gunakan adalah relational database
 Relational database cukup mudah dimengerti dan dipelajari karena kita sudah terbiasa
menyimpan data dalam bentuk tabular (tabel) seperti di Microsft Excel atau di Google
Doc Spreadsheet
 Selain itu relational database memiliki perintah standard menggunakan SQL, sehingga
kita mudah ketika ingin berganti-ganti aplikasi database (seperti MySQL, Oracle,
PostgreeSQL dan lain-lain)
Cara Kerja DBMS

Gambar 1. Cara Kerja DBMS

SQL
 Structured Query Language
 Merupakan bahasa yang digunakan untuk mengirim perintah ke DBMS
 SQL adalah bahasa yang karena hanya berisi instruksi untuk menyimpan, mengubah,
menghapus atau mengambil data melalui DBMS.
 Secara garis besar, semua perintah SQL di relational database itu hamper sama,
namun biasanya tiap DBMS ada improvement yang membedakan hal-hal kecil dalam
perintah SQL namun secara garis besar perintahnya tetap sama.

Pengenalan MySQL
 MySQL adalah DBMS Relational OpenSource yang paling popular didunia saat ini
 Tidak hanya OpenSource, MySQL juga gratis untuk digunakan
 MySQL pertama kali dibuat dan diperkenalkan tahun 1995 oleh David Axmark dan
Michael Widenius
 MySQL sangat popular sekali terutama dikalangan programmer web PHP
 https://www.mysql.com/

MySQL Community vs MySQL Enterprise


 Pastikan mendownload aplikasi MySQL dengan benar saat membuka halaman
website resmi MySQL.
 MySQL menawarkan pilihan versi MySQL Enterprise, yaitu DBMS MySQL yang
berbayar.
 MySQL yang versi gratis adalah MySQL Community
 MySQL Enterprise sendiri lebih ke versi improvement dari MySQL Community,
biasanya menambahkan support dan monitoring
 Jika menggunakan MySQL Community, maka kita harus tangani semuanya sendiri,
dari masalah dan monitoring MySQL nya.

MySQL vs MariaDB
 Tahun 2008 MySQL di akuisisi oleh perusahaan Sun Microsystem
 Namun Tahun 2009, Sun Microsystem diakuisisi oleh perusahaan Oracle (Pemilik
DBMS Oracle)
 Hal ini menyebabkan 2 founder MySQL keluar dari MySQL dan membuat project
baru bernama MariaDB
 MariaDB sebenarnya fork dari MySQL, jadi apa yang bisa dilakukan di MySQL bisa
dilakukan di MariaDB
 Sehingga sekarang jangan terlalu bingung jika ada MySQL dan MariaDB, karena
sebenarnya itu dari source code yang sama, mungkin ada perbedaan kecil seperti
improvement yang dilakukan pada MariaDB, namun secara garis besar sebenarnya
tetap sama.
 https://mariadb.org/

Cara Kerja MySQL Server

Gambar 2. Cara Kerja MySQL Server

Cara Menginstall MySQL


 Menginstall MySQL banyak caranya, bisa download langsung dari halaman website
resmi https://www.mysql.com/downloads/
o Klik MySQL Community (GPL) Downloads »
o Pilih MySQL Community Server

o Pilih sistem operasi yang digunakan pada notebook atau PC anda.

o Download – Install
o Saat anda meng-install aplikasi MySQL, pilih Full pada Choosing a Setup
Type.
o Setelah proses install selesai, klik service pada menu windows pastikan nama
MySQL yang kita install tersebut dalam kondisi running.

 Atau menggunakan aplikasi yang mem-bundle MySQL seperti XAMPP yang biasa
digunakan oleh programmer PHP
 Jika sudah menginstall MySQL/MariaDB menggunakan XAMPP, tidak perlu
menginstall lagi MySQL, karena jika bentrok, maka salah satu aplikasi MySQL tidak
akan bisa digunakan.

Menggunakan MySQL Client


 MySQL Client adalah aplikasi berbasis terminal yang disediakan oleh MySQL untuk
berkomunikasi dengan MySQL Server.
 Karena berbasis terminal, sehingga MySQL Client sangat cocok untuk kita gunakan,
misal ketika di server production, dimana kita menginstall MySQL di linux server
berbasis terminal misal
 Kita tidak perlu menginstall MySQL Client secara terpisah, karena sudah tersedia di
dalam aplikasi MySQL ketika kita menginstall.
 https://www.mysql.com/products/workbench/

Database
 Database adalah tempat kita menyimpan table di MySQL
 Jika kita misalkan table di MySQL adalah sebuah file, maka database adalah
foldernya, dimana kita bisa menyimpan banyak table di sebuah database.
 Biasanya pembuatannya kita akan membuat satu database untuk satu jenis aplikasi
bisa menggunakan lebih dari satu database, namun lumrahnya, satu aplikasi akan
menggunakan satu database.
MySQL

Database_xxx Database_yyy

Table
B Table
xxx
Table

A Table
C Table
111

Gambar 3. Gambaran MySQL, Database dan Table

 Melihat semua database di MySQL, maka anda dapat mengetikkan perintah SQL
show databases;
 Untuk membuat database, maka cukup mengetikkan perintah create database
nama_database;
 Untuk menghapus database, maka anda dapat mengetikkan perintah drop database
nama_database;
Perintah drop database digunakan untuk menghapus database, maka seluruh data atau
table yang ada dalam database akan hilang. Pastikan anda untuk mem backup data
atau table tersebut.
 Setelah anda meng-create database, langkah selanjutnya gunakan database tersebut
dengan mengetikkan perintah use nama_database; jika anda tidak menggunakan
database tersebut, maka anda tidak dapat meng-create table di dalam database
tersebut.

Tipe Data
 Saat kita membuat table di excel, kita bisa menentukan tipe data yang kita masukkan
ke tiap kolom di excel.
 Pada MySQL, kita juga bisa menentukan tipe data tiap kolom yang kita buat disebuah
table
 Ada banyak sekali tipe data yang tersedia di MySQL, dari yang sederhana sampai
yang kompleks
 Biasanya kita akan menggunakan tipe data sesuai dengan kebutuhan kolom yang
perlu kita buat.

Tipe Data per Kolom


Tabel 1. Contoh Tipe Data dalam Database
Id (number) Nama (text) Harga (number) Jumlah (number)
1 Apel 5000 100
2 Jeruk 2000 200
3 Semangka 10000 50
… … … …
Keterangan:
Tipe data pada kolom harus sama

Tipe Data Number


 Tipe data secara garis besar, tipe data number di MySQL ada dua jenis:
o Integer atau tipe number bilangan bulat

Keterangan:
 Length in Bytes adalah ukuran dalam kapasitas memori penyimpanan.
 Unsigned adalah nilai yang tidak bisa menampung nilai minus akan tetapi
nilai minus di ganti menjadi “0”

o Floating Point, atau tipe data number pecahan


o Tipe data Decimal
 Selain integer dan floating point, di MySQL terdapat tipe data DECIMAL
 Ini tipe data number khusus yang bisa ditentukan jumlah precision
(panjang dari angkanya) dan scalenya (komanya).

Keterangan:
Decimal (5,2) = 5 adalah panjang angkanya, dan 2 adalah jumlah angka
dibelakan koma

Number Attribute

Tipe Deskripsi
Dimana N adalah integer dengan panjang data sebanyak N yang
ditetapkan.
TYPE(N)
Contoh: INT(3) = maka panjangnya angka yang diinputkan adalah 3
digit
Padding default spasi diganti dengan nol, Jadi, jika anda mengetikkan
tipe data INT(3) ZEROFILL, 7, maka ditampilkan 007
ZEROFILL
Jika anda mengetikkan INT(3) ZEROFILL, 2, maka hasilnya 002

Tipe Data String


 Selain number, biasanya kita sering menyiman data di dalam tabel dalam bentuk
tulisan
 Tipe data ini namanya tipe data String atau Text
 Ada banyak tipe data String di MySQL
o CHAR dan VARCHAR
 Pertama tipe data string di MySQL adalah CHAR dan VARCHAR
 Kita bisa menentukan jumlah panjang maksimal karakter yang bisa
ditampung oleh CHAR dan VARCHAR dengan menggunakan kurung
buka lalu masukkan jumlah maksimal karakter dan diakhiri kurung tutup
 Misal, CHAR(10) atau VARCHAR(10) artinya tipe data String dengan
maksimal jumlah karakternya adalah 10 karakter.
 Maksimum ukuran CHAR atau VARCHAR adalah 65535 karakter

Perbedaan CHAR dan VARCHAR

Keterangan:
 Perbedaannya adalah cara menyimpan datanya.
 Jika anda menginputkan nilai atau tanda ‘’ saja, maka CHAR akan tetap dihitung
sebanyak 4 karakter dengan storage required sebanyak 4 bytes.
 Jika anda inputkan nilai ‘abcdefgh’ dan CHAR hanya menyimpan sebanyak karakter,
maka yang dibaca adalah ‘abcd’ dengan storage required sebanyak 4 bytes.
 VARCHAR atau disebut dengan variable karakter dimana ukurannya bisa membesar
dan mengecil sesuai dengan data yang diinputkan.
 Jika anda inputkan tanda string ‘’ saja, maka storage required 1 bytes
 Alasan panjang storage required lebih 1 bytes, karena varchar membutuhkan
informasi dari penggunaan datanya.

o Tipe Data TEXT


 Selain CHAR dan VARCHAR, tipe data String yang lainnya adalah
TEXT
 Berbeda dengan CHAR dan VARCHAR yang kita bisa tentukan panjang
maksimum nya, TEXT tidak, namun TEXT sudah memiliki maksimum
panjangnya
 Terdapat 4 tipe data TEXT, yaitu:
1. TINYTEXT dengan maksimum 255 karakter (-256 bytes)
2. TEXT dengan maksimum 65535 karakter (-64 kb)
3. MEDIUMTEXT dengan maksimum 16777215 karakter (-16MB)
4. LONGTEXT dengan maksimum 4294967295 (-4GB)

o Tipe Data ENUM


 ENUM adalah tipe dta String yang bisa kita tentukan pilihan pilihannya
 Misal kita bisa membuat
 ENUM(‘Pria’,’Wanita’), artinya hanya bisa menerima data Pria atau
Wanita
 ENUM(‘Programmer’,’Analis’,’MP’), artinya hanya bisa menerima
data Programmer, Analis, atau MP

Tipe Data Date dan Time


 Selain tipe data Number dan String, biasanya kadang kita sering menyimpan data
waktu atau tanggal
 Sebenarnya bisa kita gunakan String untuk menyimpan dta waktu atau tanggal, namun
itu tidak di rekomendasikan, karena akan menyulitkan kita ketika nanti butuh
melakukan manipulasi waktu atau tanggal di MySQL.

Jenis-Jenis Tipe Data Date dan Time


Keterangan:
 DATE : Tipe data yang dapat menyipan data sampai dengan tanggal
 DATETIME : Tipe data yang dapat menyipan data sampai dengan tanggal dan
waktu
 TIMESTAMP : Sama dengan DATETIME, namun TIMESTAMP digunakan jika
anda ingin menambahkan informasi seperti created at….

Tipe Data Boolean


 BOOLEAN adalah tipe data kebenaran, yang artinya datanya hanya ada dua jenis,
benar atau salah
 Benar drepresentasikan dengan data TRUE, sedangkan salah direpresentasikan
dengan data FALSE

Tipe Data Lainnya seperti BLOB, SPATIAL, JSON, SET dan lain-lain atau kalian bisa baca
pada link berikut: https://dev.mysql.com/doc/refman/8.0/en/data-types.html

Table
 Data biasanya disimpan di dalam tabel di MySQL
 Tiap tabel biasanya menyimpan satu jenis data, misal ketika kita membuat aplikasi
took online, kita akan membuat tabel barang, tabel pelanggan, tabel penjual dan lain-
lain
 Sebelum kita bisa memasukkan data ke tabel, kita wajib terlebih dahulu membuat
tabelnya terlebih dahulu
 Dan tiap tabel yang kita buat, wajib ditentukan kolom-kolomnya dan tipe data tiap
kolomnya
 Kita juga bisa mengubah tabel yang sudah terlanjur dibuat, seperti menambah kolom
baru, mengubah kolom yang sudah ada, atau menghapus kolom
Storage Engines
 MySQL memiliki berbagai cara melakukan pengolahan data, cara pengolahan data
tersebut disimpan dalam Storage Engines
 Saat ini yang biasa dan popular digunakan adalah InnoDB yang merupakan
DEFAULT storage engines dari MySQL.
 Untuk melihat storage engines apa saja yang terdapat di MySQL, kita bisa
menggunakan perintah: SHOW ENGINES;

Gambar 4. Daftar Storage Engines


 Memory storage engine dimana data disimpan didalam memori, jika computer
dimatikan maka data tersebut akan hilang.

Melihat Tables
 Setelah anda sukses meng-create database, ketikkan perintah use nama_database nya
 Show tables. Jika anda sudah membuat table di dalam database nya, maka seluruh
table yang anda create akan muncul.

Membuat Tables
 Perintah SQL untuk membuat table adalah,
create table barang(
id int,
nama varchar(100),
harga int,
jumlah int
)Engine = InnoDB;
 Melihat struktur table
Describe nama_tabel;
describe barang;
 Perintah struktur SQL untuk membuat tabel
Show Create Table nama_table;
show create table barang;

 Mengubah table, dimana kita dapat menambah kolom, merename table dan lain
sebagainya
ALTER TABLE barang
ADD COLUMN nama_column TEXT, //perintah untuk menambah
kolom
DROP COLUMN nama, //perintah untuk menghapus kolom
RENAME COLUMN nama TO nama_baru, //perintah untuk merubah
nama kolom
MODIFY nama VARCHAR(100) AFTER jumlah, //menggeser kolom
nama setelah kolom jumlah
MODIFY nama VARCHAR(100) FIRST; //menggeser kolom nama
pada posisi pertama

Null Value
 NULL adalah nilai ketika kita tidak mengisi data ke dalam kolom
 Secara default, saat kita membuat kolom, kolom tersebut bisa bernilai NULL, jika kita
tidak ingin menerima nilai NULL, kita bisa menambahkan NOT NULL ketika
pembuatan kolomnya.

Default Value
 Saat kita menyimpan data kedalam tabel, lalu kita hanya menyimpan beberapa kolom
(tidak semuanya), kolom yang tidak kita beri nilai secara default nilainya adalah
NULL
 Jika kita ingin mengubah default value nya, kita bisa menambahkan perintah
DEFAULT NILAI ketika pembuatan kolomnya
 Khusus tipe data DATETIME atau TIMESTAMP, jika kita ingin menggunakan
default value dengan nilai waktu saat ini, kita bisa gunakan kata kunci
CURRENT_TIMESTAMP (perintah yang menggunakan waktu saat ini)
create table barang(
id int NOT NULL,
nama varchar(100) NOT NULL,
harga int NOT NULL DEFAULT 0, //saat anda tidak memasukkan
nilai, maka default nilai nya adalah 0
jumlah int NOT NULL DEFAULT 0
)Engine = InnoDB;

 Perintah SQL untuk membuat ulang table atau menghapus semua data yang ada dalam
table, adalah: TRUNCATE nama_tabel;
 Perintah untuk menghapus tabel adalah: DROP Table nama_tabel;

Insert Data
 Sebelum kita memasukkan data kedalam tabel, tabel harus dibuat terlebih dahulu
 Kita bisa menyebutkan kolom mana yang ingin kita isi, jika kita tidak menyebutkan
kolomnya, artinya kolom tersebut tidak akan kita isi, dan secara otomatis kolom yang
tidak kita isi, nilainya akan NULL, kecuali memiliki DEFAULT VALUE
 Untuk memasukkan data kedalam tabel, kita bisa menggunakan perintah SQL yang
bernama INSERT.
Perintah untuk menginputkan satu data
insert into products (id, nama, price, quantity) values ('P0001','Mie Ayam
Bakso',15000,100);

atau

insert into products (id, nama, deskription, price, quantity) values


('P0002','Mie Ayam Bakso', 'Mie Ayam + Bakso',25000,100);

Perintah menginputkan data lebih dari satu data


insert into products (id, nama, price, quantity)
values
('P0003','Mie Ayam Ceker',20000,100),
('P0004','Mie Ayam Spesial',25000,100),
('P0003','Mie Ayam Yamin',15000,100);
Select Data
 Untuk mengambil data di tabel, kita bisa menggunakan SQL dengan kata kunci
SELECT
 SELECT bisa digunakan untuk mengambil semua kolom yang ada di tabel atau
sebagian kolom saja
 Jika kita ingin mengambil semua kolom, kita bisa menggunakan karakter * (bintang)
 Jika kita hanya ingin mengambil beberapa kolom saja, kita bisa sebutkan nama-nama
kolom yang ingin kita ambil datanya.
SELECT * FROM nama_tabel;

//Atau menampilkan kolom tertentu saja, maka gunakan perintah:

SELECT id, nama, price, quantity FROM products;

Primary Key
 Saat kita membuat tabel, idealnya tiap tabel memiliki Primary Key
 Primary Key adalah sebuah kolom yang kita tunjuk sebagai id dari tabel tersebut
 Primary key adalah identitas untuk tiap baris data didalam tabel
 Primary key harus unik, tidak boleh ada data dengan primary key yang sama
 Kita bisa menunjuk kolom yang akan kita jadikan primary key

Primary Key di Multiple Column


 Kita bisa membuat primary key dengan kombinasi beberapa kolom
 Namun disarankan tetap menggunakan satu kolom ketika membuat primary key
 Kecuali ada kasus khusus, seperti membuat tabel yang berelasi MANY TO MANY

Perintah SQL untuk menambahkan Primary Key di dalam column.


CREATE TABLE products(
id VARCHAR(10) NOT NULL,
nama VARCHAR(100) NOT NULL,
deskription TEXT,
price INT UNSIGNED NOT NULL,
quantity INT UNSIGNED NOT NULL DEFAULT 0,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
PRIMARY KEY (id)
);

Where Clause
 Saat mengambil data menggunakan perintah SQL SELECT, kadang kita ingin
melakukan pencarian data
 Misal kita ingin mengambil data barang yang harganya 1jt, atau mengambil data
barang yang quantity nya 0 (stoknya kosong)
 Hal ini bisa kita lakukan dengan WHERE clause setelah perintah SELECT

SELECT id, nama, price, quantity
FROM products
WHERE quantity = 0;
Keterangan:
Perintah untuk menampilkan id, nama, price, quantity dari tabel products dimana yang
ditampilkan adalah nilai quantity = 0.

Update Data
 Untuk mengubah data di tabel, kita bisa menggunakan perintah SQL UPDATE
 Saat menggunakan SQL UPDATE kita harus memberi tahu data mana yang akan di
update dengan WHERE clause
 Hati-hati ketika meng-update data di tabel, jika sampai WHERE clause nya salah
bisa-bisa kita malah meng-update seluruh data di tabel
 Untuk update kita harus beritahu kolom mana yang akan di update.

Menambahkan Kolom Kategori


ALTER TABLE products
ADD COLUMN category ENUM(‘Makanan’,’Minuman’,’Lain-lain’)
AFTER nama;

UPDATE products
SET category = ‘Makanan’
WHERE id = ‘P0001’;
//Update untuk nilai yang lebih dari satu data.

UPDATE products
SET category = ‘Makanan’
Description = ‘Mie Ayam Original + Ceker’
WHERE id = ‘P0003’;

//Mengubah data harga dengan menambahkan nilai yang ada pada kolom tersebut

UPDATE products
SET price = price + 5000
WHERE id = ‘P0004’;

Delete Data
 Setelah kita tahu cara menambah data mengubah dan mengambil data di tabel,
terakhir yang perlu kita ketahui adalah menghapus data di table
 Untuk menghapus data di table kita menggunakan perintah SQL DELETE
 Perintah SQL DELETE sama seperti UPDATE, kita perlu memberi tahu data mana
yang akan di hapus dengan WHERE clause
 Dan hati-hati jangan sampai salah menentukan WHERE clause, karena jika salah
bisa-bisa kita akan menghapus seluruh data di tabel.

DELETE
FROM products
WHERE id =’P0009’;

Alias
 MySQL memiliki fitur untuk melakukan alias untuk kolom dan tabel
 Alias berguna jika kita ingin mengubah nama kolom atau nama tabel ketika
melakukan SELECT data
 Mungkin saat ini alias untuk tabel tidak terlalu terlihat gunanya, tapi nanti ketika kita
telah mempelajari tentang JOIN, maka fitur alias untuk tabel sangat berguna sekali.

Contoh pemberian alias untuk kolom


price as ‘Harga’
quantity as ‘Stok’
FROM products;

SELECT p.id as 'Kode',


p.nama as 'Nama',
p.category as 'Kategori',
p.price as 'Harga',
p.quantity as 'Stok'
FROM products as p;
o Operator perbandingan
Operator Keterangan
= Sama dengan
< > Atau != Tidak Sama dengan
< Kurang dari
<= Kurang dari atau sama dengan
> Lebih dari
>= Lebih dari atau sama dengan

Contoh:
Mencari data dengan operator perbandingan dimana quantity dari tabel produk
besar dari 100.
SELECT id, nama, price, quantity
FROM products
WHERE quantity > 100;

o Operator AND dan OR


 Kadang kita ingin mencari data dengan beberapa gabungan kondisi, kita
bisa menggunakan operator AND dan OR
 AND dan OR digunakan untuk menggabungkan beberapa dua operator
Hasil Operator AND

Contoh:
Mencari data dengan operator AND dimana quatity > 100 dan price > 10000 pada
tabel products. Kondisi nya harus sama-sama benar.
SELECT * FROM products
WHERE quantity > 100 AND price > 20000;
Hasil Operator OR

Contoh:
Mencari data dengan operator OR dimana quatity > 100 dan price > 20000 pada
tabel products.
SELECT * FROM products
WHERE quantity > 100 OR price > 20000;

Menggabungkan operator AND dan OR. Jika ingin menggabungkan operator


AND dan OR, maka yang di prioritaskan adalah operator AND terlebih dahulu.
Jika ingin memprioritaskan sesuatu, maka diberi tanda ()
Contoh:
SELECT id, nama, price, quantity
FROM products
WHERE (category = ‘Makanan’ OR quantity > 500)
AND price > 100000;
Keterangan:
Maka yang terlebih dahulu dikerjakan adalah yang didalam kurung, jika sudah
terpenuhi maka akan mengerjakan operator AND.

o Operator LIKE
 LIKE operator adalah operator yang bisa kita gunakan untuk mencari
sebagian data dalam string
 Ini cocok sekali ketika kita hanya ingin mencari sebagian kata dalam
string
 Namun perlu diingat, operator LIKE itu sangat lambat, oleh karena itu
tidak disarankan jika datanya sudah terlalu besar di tabel
 Operator LIKE tidak case sensitive, jadi huruf besar dan kecil tidak akan
berpengaruh
Hasil Operator LIKE

Keterangan:
b% = artinya kita ingin mencari data yang depannya adalah b
%a = artinya kita ingin mencari data yang belakangnya adalah a
%mie% = artinya ingin mencari seluruh kata yang ada kata mie

o Operator NULL
 Untuk mencari data yang berisi NULL kita tidak bisa menggunakan
operator perbandingan = NULL
 Ada operator khusus untuk mencari data NULL yanitu menggunakan
NULL operator
 IS NULL artinya mencari yang NULL
 IS NOT NULL artinya mencari yang tidak NULL
Contoh:
Mencari data yang NULL dengan menggunakan operator NULL
SELECT *
FROM products
WHERE description IS NULL;

o BETWEEN Operator
 Kadang kita ingin mencari data yang >= dan <= secara sekaligus, hal ini
jika dilakukan secara bersamaan makan akan sedikit rumit.
 Misal kita mencari products yang harganya antara 10000 sampai 20000
 Untuk melakukan ini, kita bisa menggunakan WHERE price >= 10000
AND price <= 20000. Cara seperti ini membutuhkan perintah yang sangat
panjang. Untuk mengatasi ini maka digunakan operator BETWEEN.
 Namun ada operator BETWEEN yang bisa kita gunakan agar lebih
sederhana
 Untuk kebalikannya, kita bisa gunakan NOT BETWEEN
SELECT *
FROM products
WHERE price BETWEEN 10000 AND 20000;

o IN Operator
 Operator IN adalah operator untuk melakukan pencarian sebuah kolom
dengan beberapa nilai
 Misal kita ingin mencari products dengan category Makanan atau
Minuman, maka kita bisa menggunakan Operator IN
SELECT *
FROM products
WHERE category IN (‘Makanan’, ‘Minuman’);

// penggunaan operator NOT IN


SELECT *
FROM products
WHERE category NOT IN (‘Makanan’, ‘Minuman’);
o Order By Clause
 Untuk mengurutkan data ketika menggunakan perintah SQL SELECT,
kita bisa menambahkan ORDER BY clause
 ORDER BY clause digunakan untuk mengurutkan data berdasarkan
kolom yang dipilih, dan jenis urutan (ASC atau DESC)
 Kita juga bisa mengurutkan tidak hanya terhadap satu kolom, tapi
beberapa kolom
SELECT *
FROM products
ORDER BY price ASC, id DESC;
//mengurutkan lebih dari satu kolom.

Limit Clause
 Mengambil seluruh data di tabel bukanlah pilihan bijak, apalagi jika datanya sudah
banyak sekali.
 Kita bisa membatasi jumlah data yang diambil dalam SQL SELECT dengan LIMIT
clause
 Selain membatasi jumlah data, kita juga bisa meng-skip sejumlah data yang tidak
ingin kita lihat.
 LIMIT biasanya digunakan saat melakukan paging di aplikasi kita.

Membatasi Hasil Query


SELECT * FROM products
WHERE price > 0
ORDER BY price
LIMIT 2;

Skip Hasil Query


SELECT * FROM products
WHERE price > 0
ORDER BY price
LIMIT 3, 2; //angka 3 merupakan skip (artinya adalah 3 angka pertama akan dihiraukan) dan
angka 2 adalah limit (dimana paging nya dimulai dari angka 4).
Select Distinct Data
 Saat melakukan query dengan SELECT, kadang kita mendapatkan data yang duplikat
 Misal kita ingin melihat semua kategori di tabel products, maka otomatis hasil query
SELECT akan duplikat, karena banyak sekali produk dengan kategori yang sama
 Jika kita ingin menghilangkan data-data duplikat tersebut, kita bisa menggunakan
SELECT dengan tambahan DISTINCT sebelum nama kolomnya.

Menghilangkan Data Duplikat


SELECT distinct category
FROM products;

Numeric Function
 MySQL memiliki banyak sekali fitur untuk manipulasi data angka
 Hal ini memudahkan kita untuk memanipulasi data angka
 Secara garis besar, fitur ini dibagi menjadi dua, Arithmetic Operator dan
Mathematical Function

Arithmetic Operator
Name Description
%, MOD Modulo operator
* Multiplication operator
+ Addition operator
- Minus operator
Change the sign of the argument (Minus
-
didepan angka)
/ Division operator
DIV Integer division (dibagi)

Menggunakan Arithmetic Operator


SELECT 10 + 10 as hasil;

SELECT id, name, price DIV 1000 as ‘Price in K’


FROM products;

Mathematical Function
 Selain arithmetic operator, ada juga mathematical function
 Ini adalah kumpulan function yang terdapat di MySQL yang bisa kita gunakan
sebagai fungsi-fungsi matematika
 Ada banyak sekali, dan tidak bisa kita bahas semua
 https://dev.mysql.com/doc/refman/8.0/en/mathematical-functions.html

Menggunakan Mathematical Function


SELECT PI();
SELECT POWER (10, 2);
SELECT COS(10);
SELECT SIN(10);
SELECT TAN(10);

SELECT id, COS(price), SIN(price), TAN(price) FROM products;

SELECT id, name, price


FROM products
WHERE price DIV 1000 > 15;
 MySQL memiliki fitur yang bernama auto increment, fitur ini bisa kita gunakan untuk
menandai bahwa suatu primary key datanya diisi secara otomatis dari angka terakhir +
1
 Dengan menggunakan auto increment, kita tidak perlu lalu memasukkan data primary
key, ini akan otomatis dibuat oleh MySQL.
 Auto Increment hanya bisa digunakan untuk primary key
 Jika anda memiliki data sebanyak 3 record, dan anda menghapus data terkhir (data
record ke-3), maka saat anda menginputkan data baru, maka idnya akan melanjutkan
dari record terakhir (akan menjadi id ke-4)

Membuat Tabel dengan Auto Increment


CREATE TABLE admin (
id int not null auto_increment,
first_name Varchar (100),
last_name Varchar (100),
PRIMARY KEY (id)
) Engine = InnoDB;

Memasukkan Data Tanpa ID


Untuk table yang di set dengan auto increment tidak perlu menginputkan idnya.
Berikut cara menginputkan data pada table tersebut adalah:
insert into admin (first_name, last_name)
values ('Eko', 'Khaeneddy'),
('Rudi', 'Nugraha'),
('Joko', 'Moro');

// Tampilkan data pada table by id


select * from admin order by id;

//Coba dihapus data dengan id = 3


Delete from admin where id = 3;

Melihat Id Terakhir
SELECT LAST_NAME_ID();
String Function
 Sama seperti number, di MySQL juga banyak menyediakan function untuk tipe data
String
 Ada banyak sekali function-function yang bisa kita gunakan
 https://dev.mysql.com/doc/refman/8.0/en/string-functions.html

Menggunakan String Function


select id,
lower (nama) as 'Name Lower',
upper(nama) as 'Name Upper',
length (nama) as 'Name Length'
FROM products;

Date dan Time Function


 MySQL juga menyediakan banyak sekali function yang bisa kita gunakan untuk
mengolah data tipe Date dan Time
 https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html

Anda mungkin juga menyukai