Anda di halaman 1dari 37

Pengolahan Data dengan SQL

SQL

Structured Query Language

Merupakan bahasa yang digunakan untuk mengirim perintah ke
DBMS

SQL adalah bahasa yang mudah karena hanya berisi instruksi
untuk menyimpan, mengubah, menghapus atau mengambil data
melalui DBMS

Secara garis besar, semua perintah SQL di Relational Database
itu hampir sama, namun biasanya tiap DBMS ada improvement
yang membedakan hal-hal kecil dalam perintah SQL, namun
secara garis besar perintahnya tetap sama
Kenapa harus belajar SQL?

Kunjungi menti.com ya
Kenapa harus belajar SQL?

Mudah dipelajari

Terstandardisasi

Melatih kemampuan analisis

Dapat digunakan untuk membantu
dalam pengolahan data yang besar
TIPE DATA
TIPE DATA NUMBER
Tipe Data Number

Secara garis besar, tipe data number di MySQL
ada dua jenis;

Integer, atau tipe number bilangan bulat

Floating Point, atau tipe data number pecahan
Tipe Data Integer
Tipe Data Floating Point
DECIMAL

Selain Integer dan Floating Point, di MySQL terdapat tipe
data DECIMAL

Ini tipe data number khusus yang bisa ditentukan jumlah
precision dan scale nya

DECIMAL Min Max

DECIMAL(5, 2) -999.99 999.99

DECIMAL(5, 0) -99999 99999

DECIMAL(3, 1) -99.9 999

DECIMAL(3) -999 999


TIPE DATA STRING
Tipe Data String

Selain number, biasanya kita sering menyimpan data di
dalam tabel dalam bentuk tulisan

Tipe data ini namanya tipe data String atau Text

Ada banyak tipe data String di MySQL
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 masukan 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
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 bisa kita
tentukan maksimum panjang nya

Terdapat 4 tipe data TEXT

TINYTEXT dengan maksimum 255 karakter (~256 bytes)

TEXT dengan maksimum 65535 karakter ( ~64 kb)

MEDIUMTEXT dengan maksimum 16777215 karakter (~16MB)

LONGTEXT dengan maksimum 4294967295 karakter (~4GB)
TIPE DATA DATE AND TIME
Tipe Data Date dan Time

Selain tipe data Number dan String, biasanya
kadang kita sering menyimpan data waktu atau
tanggal

Tipe Data Date dan Time Format Contoh

DATE YYYY-MM-DD 2020-10-10

DATETIME YYYY-MM-DD HH:MM:SS 2020-10-10 10:10:10

TIMESTAMP YYYY-MM-DD HH:MM:SS 2020-10-10 10:10:10

TIME HH:MM:SS 10:10:10

YEAR YYYY 2020


TABEL
Tabel

Data biasanya disimpan di dalam tabel di MySQL,
Suatu table tersusun dalam kolom (attribute) dan baris (row
/record)

Tiap tabel biasanya menyimpan satu jenis data

Sebelum bisa menyimpan data, tabel perlu dibentuk
terlebih dahulu

Untuk membentuk sebuah tabel, terlebih dahulu
tentukan kolom-kolom, kemudian tentukan tipe data
tiap kolom
Tabel

Contoh Tampilan sebuah tabel
NIP NAMA ALAMAT
960212100 SABENI JAKARTA
Baris
960212101 KARTOLO SURABAYA
960212102 GARENG JOGYAKARTA
960212103 BUTET MEDAN

Kolom
Tabel

Pada suatu table bisa terdapat 3 jenis key
1) Primary Key = sebuah atau beberapa kolom yang dikelompokkan
dan secara unik mengidentifikasi row di dalam table. Tidak boleh
bernilai Null
2) Unique Key = kolom yang digunakan sebagai unik di dalam table .
Unique key bisa memiliki nilai NULL.
3) Foreign Key = kolom dalam sebuah table , yang dapat dipakai
dalam membuat relasi antara satu table dengan table lainnya.
Foreign key bukanlah primary key table tersebut, namun menjadi
primary key bagi table lainnya
Tabel

Relasi Tabel
Table WP
NPWP NAMA_WP KPP_ADMINISTRASI
123456789001000 PANTANG MUNDUR 051 Foreign Key
987654321302001 MAJU SENDIRI 605
012345678051000 MILIK BANGSA 012
876543210108002 KARYA BERSAMA 302

Tabel KPP
Primary Key
KPP NAMAKPP ALAMAT
001 KPP PRATAMA JAKARTA MATRAMAN JAKARTA
003 KPP PRATAMA JAKARTA PULOGADUNG JAKARTA
302 KPP PRATAMA BATURAJA BATURAJA
051 KPP WAJIB PAJAK BESAR TIGA JAKARTA
108 KPP PRATAMA ACEH BESAR BANDA ACEH

Primary Key
Tabel

Contoh Perintah Create Tabel di MySQL :
 Template Standar Perintah

Create Tabel [Nama Tabel] (Nama Kolom Tipe Kolom)

Create table masterfile_lokakarya (

npwp varchar(15) not null,

kppadm varchar(3),

nama_wp varchar(30),

alamat_wp varchar(50),

Primary key (npwp)

);

Perintah create table juga dapat digunakan diikuti dengan perintah select dari tabel
lain, yang artinya, tabel baru yang akan dibentuk akan mengambil data dari tabel lain
yang sudah tersedia.
Tabel, lanjutan...

Apakah kita hanya bisa meng-create tabel di
MySQL ? Bisakah kita menghapus tabel?
Bisakah kita merubah kolom?
 Alter
 Drop
 Rename
 Modify
 Drop dan Truncate
Tabel, lanjutan...

Alter

ADD – Contoh = “Alter Table masterfile_lokakarya add column
tgl_daftar timestamp;”

ADD- Setelah kolom tertentu = “Alter Table masterfile_lokakarya
add column tgl_lahir timestamp after nama_wp;”

ADD – Multiple Columns = “Alter Table masterfile_lokakarya add
column (kd_klu char(5), id_jns_wp tinyint);”

ADD – Multiple Columns (After)= “Alter Table
masterfile_lokakarya add column kd_klu_after char(5) after
kd_klu, add column id_jns_wp_after tinyint after id_jns_wp;”
Tabel, lanjutan...

Drop

Single Column Drop = Alter table masterfile_lokakarya drop
kd_klu_after;

Multiple Columns Drop = Alter table masterfile_lokakarya drop
kolom_awal_baru, drop id_jns_wp_after;

Rename

Rename column = Alter table masterfile_lokakarya change
column npwp npwp15 varchar(15) ;

Renama table = Alter table masterfile_lokakarya rename to
mf_lokakarya;
Tabel, lanjutan...

Modify :

Single Column = Alter table mf_lokakarya modify npwp15 char(15)
null;

Multiple Columns = Alter table mf_lokakarya modify npwp15
varchar(15) not null, modify kppadm varchar(3) null;
Tabel, lanjutan...

Drop :

Secara sederhana, peirnta drop digunakan untuk menghapus sebuah tabel
secara keseluruhan.

Contoh = Drop Table Pegawai ;


Truncate : / Delete

Perintah truncate digunakan untuk menghapus seluruh record/row/tupple di
dalam sebuah tabel dengan tetap mempertahankan struktur dari tabel
tersebut:

Contoh = Truncate table pegawai :

Delete from pegawai;
VIEW

Secara sederhana dapat diartikan sebagai “Stored Query”

Untuk membentuk View perintah yang digunakan adalah
“Create View”

Untuk mengakses view, digunakan perintah “Select”

View dapat membantu dalam menyederhanakan query
yang berulang dan kompleks

View juga membantu dalam menjaga konsistensi logika
bisnis
VIEW

Contoh Perintah :

create view v_mpn2017_kontribusibesar as

create view sakila.payment_kontribusibesar as select
* from sakila.payment where amount > 5
INDEX

Index membantu dalam mempercepat pencarian row dengan
nilai yang spesifik

Tanpa adanya Index, DBMS harus men-scan keseluruhan
tabel untuk mendapatkan row yang diinginkan

Contoh Perintah :

create index index_payment on

Sakila.payment (customer_id,

Staff_id,

Rental_id);
Primary Key

Jika primary key hanya terdiri dari satu kolom unik maka
CREATE TABLE sakila.Persons (

ID int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Age int,

PRIMARY KEY (ID)

);

Bisa juga menggunakan perintah alter

ALTER TABLE Persons
ADD PRIMARY KEY (ID);
Primary Key

Jika primary key hanya terdiri dari dua kolom unik maka
CREATE TABLE Persons (

ID int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Age int,

CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)

);

--constraint menandakan peraturan tambahan bahwa primary key tidak hanya satu kolom

Bisa juga menggunakan perintah alter

ALTER TABLE Persons
ADD PRIMARY KEY (ID);
Foreign Key

Jika primary key hanya terdiri dari dua kolom unik maka
CREATE TABLE Orders (

OrderID int NOT NULL,

OrderNumber int NOT NULL,

PersonID int,

PRIMARY KEY (OrderID),

FOREIGN KEY (PersonID) REFERENCES Persons(PersonID)

);

Bisa juga menggunakan perintah alter

ALTER TABLE Orders
ADD FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);
Membuat Skema


Pada Mysql database ekuivalen dengan skema


Klik kanan kemudian pilih create new database


Buatlah database baru dengan nama ‘Latihan’
Latihan 1


Buatlah database baru dengan nama Latihan

Kemudian buatlah 4 table diatas lalu lakukan alter untuk menambahkan primary key
sert foreign key masing-masing table.

Buatlah ERD pada dbeaver dengan cara klik kanan database  create  other 
ERD Diagram , kemudian drag drop keempat table pada database Latihan

Screenshoot ERD Diagram pada folder Tugas gdrive (abaikan garis putus dan tidak)
Latihan 2


Buatlah database baru dengan nama Latihan

Kemudian buatlah 5 table diatas lalu lakukan alter untuk menambahkan primary key
serta foreign key masing-masing table. Untuk kolom ID bertiper varchar, kemudian
untuk date bertipe tanggal, mata uang bertipe decimal

Buatlah ERD pada dbeaver dengan cara klik kanan database  create  other 
ERD Diagram , kemudian drag drop keempat table pada database Latihan

Screenshoot ERD Diagram pada folder Tugas gdrive (abaikan garis putus dan tidak)

Anda mungkin juga menyukai