1.1 Pendahuluan
Suatu database adalah sebuah struktur
yang umumnya dikategorikan dalam 2 hal yaitu sebuah database flat dan sebuah
database relasional. Database relasional lebih disukai karena lebih masuk akal
dibandingkan database flat. MySQL adalah sebuah database relasional.
Pada database yang memiliki struktur
relasional, ada tabel-tabel yang menyimpan data. Setiap tabel terdiri dari
kolom dan baris. Sebuah kolom mendefinisikan jenis informasi apa yang akan
disimpan. Kita memerlukan kolom khusus untuk setiap jenis informasi yang ingin
kita simpan. Baris adalah data aktual yang disimpan. Setiap baris dari tabel
adalah masukan dari tabel tersebut dan berisi nilai-nilai untuk setiap kolom
tabel tersebut.
My SQL
merupakan database yang mendukung RDBMS (Relational Database Management
System). Sebagai database yang mendukung RDBMS, database ini terbukti telah
banyak digunakan dalam berbagai kebutuhan pendokumentasian data. MySQL
merupakan database server yang juga dapat berjalan sebagai Client. Dengan
kemampuan tersebut, database ini mampu berjalan padasistem jaringan, baik lokal
mauopun WAN (internet). Saat ini database MySQL banyak digunakan untuk membuat
aplikasi-aplikasi berbasis online seperti web.
1.2
Fungsi Sistem
Kelompok fungsi sistem adalah kelompok
fungsi yang memberikan informasi tentang pemakaian server database oleh
pemakai. Kelompok fungsi ini terdiri atas :
§ CURRENT_USER
( )
menghasilkan kombinasi nama user dan
nama host pada sesi saat ini yang terautentifikasi. Hasil output dapat berbeda
dari nilai USER ().
§ DATABASE
( )
menampilkan nama database yang sedang
digunakan.
§ VERSION
( )
menampilkan
versi MySQL yang sedang aktif.
§ LAST_INSERT_ID(
)
digunakan untuk menampilkan informasi
data yang telah dihasilkan (di-generate) oleh MySQL pada kolom yang menggunakan
tipe data AUTOINCREMENT.
§ SESSION_USER(
)
digunakan untuk menampilkan informasi
pemakain yangsedang melakukan akses ke dalam server MySQL saat ini. Fungsi ini
kadang digunakan oleh seorang pemakai., untuk mengetahui siapa saja yang sedang
login ke dalam MySQL pada suatu terminal yang sedang ditinggalkan oleh pemakai
lain, atau kadang juga kita ingin tahu kita sedang mengakses MySQL dengan nama
pemakai yang mana, akrena kita memiliki banyak nama pemakai yang berbeda-beda
privilegenya demi keamanan
§ SYSTEM
USER( )
fungsi ini sama dengan fungsi
SESSION_USER( ).
§ USER(
)
fungsi ini sama dengan fungsi
SYSTEM_USER( ) dan SESSION_USER( ).
§ BENCHMARK(count,
ekspresi)
mengerjakan
perintah pada ekspresi sejumlah count kali.
Nilai yang dihasilkan selalu 0. Hal penting dari fungsi ini adalah nilai waktu
yang digunakan (elapsed time) yang diberikan pada bagian akhir, memungkinkan
kita menilai berpaa cepat server mengevaluasi query. Berikut ini contoh
tampilan fungsi benchmark untuk mengetahui kecepatan 10 kali perintah select *
from pinjaman.
§ LOAD_FILE(namafile)
digunakan
untuk membuka file dan memberikan isinya sebagai string. File harus ada di
dalam server, dan pemakai untuk menggunakan fungsi ini harus memiliki privilege
FILE
1.2
Fungsi Agregat
Fungsi
ini ini sekilas seperti fungsi numerik, tetapi sebenarnya secara mendasar
fungsi ini berbeda dari fungsi aritmetika. Fungsi agregat adalah fungsi standar
di dalam SQL, suatu fungsi yang digunakan untuk melakukan summary, merupakan
fungsi statistik standar yang dikenakan pada suatu tabel atau query. Fungsi
aritmetika berhubungan langsung dengan manipulasi aritmetika.
§ AVG
[statement / field]
untuk menghitung nilai rata-rata.
Menghasilkan nilai NULL jika tidak ada row yang sesuai
Sintak
:
SELECT
AVG(nama_kolom) FROM nama_tabel
[WHERE]
Contoh
:
SELECT AVG (SKS) FROM Mata_Kuliah
§ COUNT
[statement / field]
untuk menghitung jumlah baris.
Menghasilkan nilai NULL jika tidak ada row yang sesuai
Sintak
:
SELECT
COUNT nama_kolom FROM nama_tabel
[WHERE]
Contoh
:
SELECT
COUNT (*) FROM mahasiswa
SELECT
COUNT (SKS) FROM Mata_Kuliah
§ SUM
[statement / field]
untuk menghitung jumlah nilai untuk
data type numerik. Menghasilkan nilai NULL jika tidak ada row yang sesuai
SELECT
SUM (nama_kolom) FROM nama_tabel
[WHERE
= Kondisi]
Contoh
:
SELECT
SUM (SKS) FROM Mata_Kuliah
§ MIN
[statement / field]
untuk menghitung nilai minimum untuk
data type numerik. Menghasilkan nilai NULL jika tidak ada row yang sesuai
Sintak
:
SELECT
MIN nama_kolom FROM nama_tabel
[WHERE]
Contoh
:
SELECT
MIN (SKS) FROM Mata_Kuliah
§ MAX
[statement / field]
untuk menghitung nilai maksimum untuk
data type numerik. Menghasilkan nilai NULL jika tidak ada row yang sesuai
Sintak
:
SELECT
MAX nama_kolom FROM nama_tabel
[WHERE]
Contoh
:
SELECT
MAX (SKS) FROM Mata_Kuliah
§ STD
[statement / field] dan STDDEV [satement / field]
digunakan
untuk mendapatkan standar deviasi dari data suatu kolom dalam tabel. Ekspresi
umumnya menyatakan kolom suatu tabel dengan tiep datanya numerik. ]
1.3 Fungsi Numerik
MySQL memiliki fasilitas dasar
untuk melakukan manipulasi data numerik, seperti penjumlahan, pengurangan,
perkalian, dan pembagian, yang disertakan dalam suatu perintah select.
Fasilitas tersebut dikenal dengan operator aritmetika. Fungsi numerik terdiri dari operator aritmatika dan fungsi
matematis. Operator aritmatik terdiri dari : + (penambahan), - (pengurangan), *
(perkalian), / (pembagian) dan div (sisa pembagian). Sedangkan fungsi matematis
terdiri dari SQRT, CEILING, FLOOR, dll.
1.3.1 Fungsi
Aritmetika
§
Penjumlahan (+)
digunakan untuk menjumlahkan dua buah data numerik,
hasil dari operasi ini adalah data numerik juga.
§
Pengurangan (-)
digunakan untuk melakukan operasi pengurangan dua
buah data numerik, bilangan yang di sebelah kiri dikurangi dengan bilangan yang
di sebelah kanan, bil1 – bil2. Hasil dari opeasi ini adalah data numerik.
§
Perkalian (*)
digunakan untuk melakukan operasi pembagian dua data
numerik. Bilangan di sebelah kiri dikali dengan bilangan yang ada di sebelah
kanan operator, hasil dari operasi ini adalah data numerik.
§
Pembagian (/)
Digunakan untuk melakukan operasi pembagian dua data
numerik. Bilangan di sebelah kiri dibagi dengan bilangan yang ada di sebelah
kanan operator, hasil dari operasi ini adalah data numerik.
§
Pembagian Sisa (%)
digunakan untuk mendapatkan sisa pembagian dari suatu
operasi pembagian, bilangan di sebelah kiri dibagi dengan bilangan yang di
sebelah kanan, sisa dari hasil pembagian ini yang menjadi hasil dari operasi
ini disebut modulus.
1.3.2 Fungsi
Matematis
§
SQRT
Untuk
mencari akar dari niai tertentu.
Contoh
:
SELECT
SQRT (100)
§
CEILING
Untuk
pembulatan ke atas dari angka decimal
Contoh
:
SELECT
CEILING (25.25)
Keterangan
: Akan menghasilkan nilai 26
§
FLOOR
Untuk
pembulatan ke bawah dari angka decimal
Contoh
:
SELECT
FLOOR (25.25)
Keterangan
: Akan menghasilkan nilai 25
§ ABS (value)
Menghasilkan
absolut dari value.
§ SIN (radian)
Menghasilkan
sinus dari radian.
§ COS (radian)
Menghasilkan
cosinus dari radian.
§ TAN (radian)
Menghasilkan
tangen dari radian.
§ ASIN (value)
Menghasilkan
radian dari sinus suatu value.
§ ACOS (value)
Menghasilkan
radian dari cosinus suatu value.
§ ATAN (value)
Menghasilkan
radian dari tangen suatu value.
§ LOG (value)
Menghasilkan
natural logaritma dari value.
§ LOG10 (value)
Menghasilkan
logaritma berbasis 10 dari value.
§ SQUARE (value)
Menghasilkan
kuadrat dari value.
§ SQRT (value)
Menghasilkan
akar kuadrat dari value.
§ EXP (value)
Menghasilkan
exponensial dari value.
§ POWER (X, Y)
Menghasilkan
XY.
§ SIGN (value)
Mengecek
apakah value adalah bilangan positif, negatif, atau nol.
§ PI
Menghasilkan
bilangan 22/7.
Contoh penggunaan operator aritmetika dalam MySQL :
SELECT
Square (UnitPrice) FROM Order
Detail
SELECT
Sqrt (UnitPrice) FROM Order
Detail
SELECT
Ceiling (UnitPrice) FROM Order
Detail
SELECT
Floor (UnitPrice) FROM Order
Detail
SELECT
Round (UnitPrice, 2) FROM Order
Detail
1.4
Fungsi String
Fungsi string digunakan untuk
melakukan manipulais data teks (string). MySQL menyediakan banyak fungsi
built-in untuk melakukan manipulasi teks ini. Berikut adalah daftar fungsi
string yang telah disediakan :
§ LEN (string)
Menghasilkan
panjang dari string.
§ LOWER (string)
Mengubah
string menjadi huruf kecil.
§ UPPER (string)
Mengubah
string menjadi huruf besar / kapital.
§ LEFT (string, value)
Menghasilkan
substring dari string sebanyak value karakter dari sisi kiri.
§ RIGHT (string, value)
Menghasilkan
substring dari string sebanyak value karakter dari sisi kanan.
§ LTRIM (string)
Memfilter
string dengan membuang sejumlah spasi yang ada di sisi kiri.
§ RTRIM (string)
Memfilter
string dengan membuang sejumlah spasi yang ada di sisi kanan.
§ REVERSE (string)
Menghasilkan
string dalam keadaan terbalik.
§ REPLICATE (string, value)
Menghasilkan
duplikasi string sebanyak value.
§ REPLACE (string, seekstring,
replacestring)
Menggantikan
seekstring menjadi replacestring dalam string.
§ STR (value, length,
decimal)
Menampilkan
value dengan dengan panjang length dengan desimal sebesar decimal.
§ SUBSTRING (string, start,
length)
Mengambil
substring dari string mulai dari posisi start sebanyak length
karakter.
Contoh penggunaan operator string dalam MySQL :
SELECT
Len (ContactName) AS PanjangNama
FROM Customers
SELECT
Lower (ContactName) FROM
Customers
SELECT
Upper (ContactName) FROM
Customers
SELECT
Left (ContactName, 5) FROM
Customers
SELECT
Right (ContactName, 5) FROM
Customers
SELECT
LTrim (Address) FROM Customers
SELECT
RTrim (Address) FROM Customers
SELECT
Reverse (ContactName) FROM
Customers
SELECT
Replicate (‘ABC’, 5)
SELECT
Replace (ContactName, ‘Budi’, ‘Johan’) FROM
Customers
SELECT
Str (UnitPrice, 8, 2) FROM
Products
SELECT
SubString (ContactName, 3, 5) FROM
Customers
1.5 Fungsi Tanggal dan Jam
Date dan time function berguna untuk
menulis data berupa tanggal dan hari/waktu. Date dan function ditulis
menggunakan DATETIME, DATE, TIMESTAMP, TIME dan YEAR.
§ DATETIME
digunakan
apabila kita memerlukan nilai yang berisi informasi tentang tanggal dan waktu.
§ DATE
digunakan
untuk menampilkan tanggal, tanpa adanya waktu.
§ Kolom
TIMESTAMP
berisi
property yang berbeda-beda, tergantung versi MySQL dan mode server MySQL yang
dijalankan.
§ TIME
tidak
hanya dapat digunakan untuk menampilkan waktuü tetapi juga dapat digunakan untuk
menampilkan waktu diantara dua kejadian.
§ YEAR
digunakan
untuk menunjukkan tahun.
1.6
Fungsi Enkripsi
Fungsi Ekripsi merupakan fungsi yang
digunakan untuk melakukan enkripsi dan dekripsi data. Permasalahan enkripsi
data biasanya berhubungan dengan password. Enkripsi merupakan proses pengaburan
data ke bentuk lain yang tidak mudah ditebak, namun dapat di ubah ke bentuk
semula (dekripsi) apabila diperlukan. Kita dapat menyimpan hasil dari encryption
function yang biasanya terdiri dari bilangan yang berubah-ubah bengan
menggunakan kolom BLOB sebagai ganti kolom CHAR atau VARCHAR untuk menghindari
masalah yang dapat timbul karena perubahan ruang sehingga mengubah nilai.
Perintah-perintah dalam encryption
function, antara lain :
§ CRYPT, melakukan proses enkripsi data.
§ MD5, menghasilkan enkripsi berupa
sederetan karakter dengan jumlah digit 32.
§ PASSWORD, mengenkripsi password MySQL dan
disimpan dalam kolom password di grant table pengguna.
§ SHA
(string), digunakan untuk menyimpan
password.
1.7 Fungsi Logika
1.7.1 Operator Logika
§ NOT [kondisi] // ! [kondisi]
menyatakan
kebalikan dari data yang ada.
§ [kondisi
1] AND [kondisi 2] // [kondisi 1] && [kondisi 2]
menyatakan
harus memenuhi dari kedua kondisi yang ada.
§ [kondisi
1] OR [kondisi 2] // [kondisi 1] || [kondisi 2]
menyatakan
harus memenuhi hanya salah satu dari kondisi yang ada.
Perintah logika / syarat untuk menghasilkan hasil yang berbeda dengan aturan tertentu :
Perintah logika / syarat untuk menghasilkan hasil yang berbeda dengan aturan tertentu :
§ CASE WHEN [perbandingan nilai] THEN [hasil] WHEN [perbandingan nilai 2] THEN
[hasil 2] ELSE [hasil lain] END
Jika
[perbandingan nilai] sesuai maka menghasilkan nilai [hasil], jika sesuai dengan
[perbandingan nilai 2] maka menghasilkan nilai [hasil 2], jika tidak ada yang
sesuai maka menghasilkan nilai [hasil lain].
§ IF ([perbandingan], [hasil 1], [hasil
2])
Jika
[perbandingan] sesuai maka muncul nilai [hasil 1], jika tidak muncul nilai
[hasil 2]. [hasil] pada perintah IF dapat diisi dengan perintah logika lainnya.
§ IFNULL ([aturan], [nilai pengganti
NULL])
Jika [aturan]
sama dengan NULL maka muncul nilai [nilai pengganti NULL].
§ NULLIF ([aturan 1], [aturan 2])
Jika [aturan 1] = [aturan 2] maka hasilnya NULL, jika [aturan 1] tidak sama dengan [aturan 2] maka hasilnya [aturan 1].
Terima kasih
Belajar OTODIDAK akan membangun karakter mandiri
salam hangat
0 komentar:
Posting Komentar