Laporan Basdat 2 (Modul 2)
Laporan Basdat 2 (Modul 2)
BASIS DATA II
1.1 Tujuan
1. ASCII()
Fungsi ASCII() adalah mengubah sebuah karakter menjadi nilai dari
sebuah ASCII-nya. Misalkan jika kita menjalankan SELECT ASCII('A'),
maka akan menghasilkan nilai 65, yang mana kita telah ketahui bersama
bahwa kode atau nilai ASCII dari 'A' adalah 65.
2. CHAR()
Fungsi CHAR() adalah berlawanan dari fungsi ASCII(), yang mana isi
parameter (argument) dari fungsi CHAR() adalah sebuah nilai ASCII-nya
dan kemudian akan menghasilkan sebuah karakter dari nilai ASCII
tersebut. Misalkan jika kita menjalankan SELECT CHAR('65'), maka
akan menghasilkan sebuah karakter 'A', yang mana kita telah ketahui
bersama bahwa karakter 'A' memiliki nilai ASCII 65.
3. FORMAT()
Fungsi FORMAT() adalah fungsi untuk mengatur jumlah digit di belakang
koma dari suatu nilai integer, decimal atau double. Pembulatannya adalah
menggunakan pembulatan ke atas. Misalkankita menjalankan SELECT
FORMAT(12345.678, 2), maka akan menghasilkan 12,345.68 yang
terbilang "Dua Belas Ribu Tiga Ratus Empat Puluh Lima Koma Enam
Puluh Delapan" dengan ketelitian 2 digit di belakang.
4. CONCAT()
Fungsi CONCAT() ini bisa dibilang adalah fungsi yang cukup sering
digunakan terkait perihal menyambungkan atau menggabunggkan dua
string atau lebih. Misalkan kita menjalankan SELECT CONCAT('Tio',' ',
'Satrio',' ', 'Wicaksono'), maka akan menghasilkan Tio Satrio Wicaksono.
Sebenarnya untuk masalah menggabungkan dua string atau lebih, kita juga
bisa melakukannya dengan tanpa fungsi ini, melainkan dengan cara seperti
ini.SELECT 'Tio' ' ' 'Satrio' ' ' 'Wicaksono', itu juga akan menghasilkan
hasil yang serupa yaitu Tio Satrio Wicaksono. Namun, semua kembali
kepada individu masing-masing, untuk sisi performa, saya pribadi belum
dapat merekomendasikan yang mana yang lebih baik.
5. REPEAT()
Fungsi REPEAT() adalah fungsi untuk mengulang karakter atau string
dengan sejumlah yang kita inginkan. Misalkan kita menjalankan SELECT
REPEAT('*', 3), maka akan menghasilkan "***".
6. REVERSE()
Fungsi REVERSE() adalah fungsi untuk memutar balik sebuah string.
Misalkan kita menjalankan SELECT REVERSE('zyxwvutsrq'), maka akan
menghasilkan qrstuvwxyz
7. SUBSTRING()
Fungsi SUBSTRING() adalah fungsi yang bisa dibilang paling sering
digunakan, fungsinya adalah untuk mengambil sebagian karakter dari
sebuah string, pertama ditentukan mulai dari mana posisi karakter
pengambilannya, kemudian seberapa banyak jumlah pengambilannya,
terhitung pengambilannya dari kiri ke kanan. Misalkan kita menjalankan
SELECT SUBSTRING('Satrio', 3, 4), maka akan menghasilkan trio.
8. TRIM(str)
Digunakan untuk menghapus spasi kosong dari sebelah kiri dan kanan
string.
9. REPLACE(x, y, z)
Mengganti semua string y yang ditemukan dalam string x menggunakan
string z.Contoh: Select REPLACE('Wempi Satria', 'i', 'e');
Hasil: Wempe Satrea
10. LEFT(x, y)
Fungsi ini untuk mengambil sejumlah y karakter dari string x, mulai dari
posisi awal.
Contoh: Select LEFT('Wempi Satria', 5);
Hasil: Wempi
11. LENGTH(x)
Untuk mengetahui panjang string x, kita dapat menggunakan fungsi ini.
Contoh: Select LENGTH('Wempi Satria');
Hasil: 12
12. LOCATE(x, y, z)
Untuk mengetahui posisi string x di dalam string y mulai dari posisi ke z.
Contoh: Select LOCATE('m', 'Wempi', 2);
Hasil: 3
13. RIGHT(x, y)
Mengambil y karakter dari string x dimulai dari posisi paling kanan
(akhir).
Contoh: Select RIGHT('Wempi Satria', 4);
Hasil: tria
2. Membuat fungsi NIPBaru yang akan digunakan untuk membuat nip baru
karyawan, yang terdiri atas gabungan dari Nip lama dengan tiga karakter
pertama dari nama karyawan.
Fungsi NIPBaru akan membuat Nip Baru bagi karyawan yang nip
lamanya adalah 12345, dengan caramenggabungkan nip lama karyawan
dengan 3 karakter pertama dari nama karyawan tersebut.
Pada bagian belajar dari contoh ini,setiap praktikan diharapkan dapat mempelajari
bagaimana menggunakan fungsi-fungsi agregasi dan fungsi-fungsi string dalam
Stored Procedure dan Function.
DELIMITER $$
Delimiter adalah karakter atau string yang digunakan untuk menyatakan
akhir SQL statement. Default delemiter pada MySQL adalah semicolon
(;).Pada procedure di atas, delimiter $$ digunakan untuk menyatakan
awal dari SQL statement.
DROP PROCEDURE IF EXISTS `personalia`.`HitungKaryawan`$$
Perintah drop procedure artinya untuk menghapus procedure
‘HitungKaryawan’, if existsartinya bersifat optional yaitu jika
prosedurnya sudah pernah ada.
CREATE PROCEDURE `personalia`.`HitungKaryawan`(kodeDep
CHAR(1))
Perintah CREATE PROCEDURE digunakan untuk membuat procedure
pada database personaliayang diberi namaHitungKaryawan. Dalam
satu database tidak boleh ada procedure dengan nama yang sama, nama
procedure juga bersifat tidak case sensitive, yang artinya penggunaan
huruf besar dan huruf kecil tidak akan berpengaruh pada program.
Parameter yang digunakan adalah kodeDep dengan tipe data CHAR
dengan batas maksimum jumlah karakter 1. Parameter yang telah di
deskripsikan ini digunakan untuk menampung data yang akan di
inputkan ketika procedure dipanggil.
BEGIN
Perintah begin ini digunakan untuk mengawali badan procedure.
END$$
Statement END$$ digunakan untuk mengakhiri badan procedure.
DELIMITER ;
StatementDELEMITER; digunakan untuk mengembalikan delimiter
menjadi semicolon (;) lagi. Eksekusi procedure dengan menekan
tombol F9 atau dengan mengklik Execute All.
CALL HitungKaryawan(1);
CALL merupakan perintah panggil diikuti dengan nama
procedureHitungKaryawan kemudian diikuti nilai(1) adalah kode
departemen yang ingin diketahui jumlah karyawannya.
RETURNS CHAR(9)
Merupakan statement untuk mendeskripsikan bahwa nilai balikan yang
dihasilkan pada function ini bertipe data CHAR dengan batas
maksimum karakter 9.
DETERMINISTIC
Statement DETERMINISTICdigunakan untuk menentukan siapa saja
yang boleh mengakses/menggunakan function ini, apakah hanya user
selaku pembuatnya saja (deterministic) atau boleh diakses oleh siapa
saja (not deterministic).
BEGIN
Perintah begin ini digunakan untuk mengawali badan function.
RETURN CONCAT(niplama,tempNip);
END$$
Statement END$$ digunakan untuk mengakhiri badan function.
DELIMITER ;
StatementDELEMITER; digunakan untuk mengembalikan delimiter
menjadi semicolon (;) lagi. Eksekusi function dengan menekan tombol
F9 atau dengan mengklik Execute All.
END$$
Statement END$$ digunakan untuk mengakhiri badan procedure.
DELIMITER ;
StatementDELEMITER; digunakan untuk mengembalikan delimiter
menjadi semicolon (;) lagi. Eksekusi procedure dengan menekan
tombol F9 atau dengan mengklik Execute All.
CALL NamaMenu;
CALL merupakan perintah panggil diikuti dengan nama
procedureNamaMenu.
Gambar 3.06 MenuTerlaris
DELIMITER $$
Delimiter adalah karakter atau string yang digunakan untuk menyatakan
akhir SQL statement. Default delemiter pada MySQL adalah semicolon
(;).Pada procedure di atas, delimiter $$ digunakan untuk menyatakan
awal dari SQL statement.
END$$
Statement END$$ digunakan untuk mengakhiri badan procedure.
DELIMITER ;
StatementDELEMITER; digunakan untuk mengembalikan delimiter
menjadi semicolon (;) lagi. Eksekusi procedure dengan menekan
tombol F9 atau dengan mengklik Execute All.
CALL NoMeja;
CALL merupakan perintah panggil diikuti dengan nama
procedureNoMeja.
Gambar 3.08 Meja yang Paling Banyak Ditempati
DELIMITER $$
Delimiter adalah karakter atau string yang digunakan untuk menyatakan
akhir SQL statement. Default delemiter pada MySQL adalah semicolon
(;).Pada fungsi di atas, delimiter $$ digunakan untuk menyatakan awal
dari SQL statement.
RETURNS CHAR(10)
Merupakan statement untuk mendeskripsikan bahwa nilai balikan yang
dihasilkan pada function ini bertipe data CHAR dengan batas
maksimum karakter 10.
DETERMINISTIC
Statement DETERMINISTICdigunakan untuk menentukan siapa saja
yang boleh mengakses/menggunakan function ini, apakah hanya user
selaku pembuatnya saja (deterministic) atau boleh diakses oleh siapa
saja (not deterministic).
BEGIN
Perintah begin ini digunakan untuk mengawali badan function.
END$$
Statement END$$ digunakan untuk mengakhiri badan function.
DELIMITER ;
StatementDELEMITER; digunakan untuk mengembalikan delimiter
menjadi semicolon (;) lagi. Eksekusi function dengan menekan tombol
F9 atau dengan mengklik Execute All.
SELECT BuatNoFaktur('2018-10-15');
SELECT digunakan untuk memilih, BuatNoFaktur adalah nama
function yang ingin dipanggil diikuti tanggal ‘2018-10-15’ yang
kemudian akan ditampilkan sebagai nomor faktur baru.
BEGIN
Perintah begin ini digunakan untuk mengawali badan procedure.
DELIMITER ;
StatementDELEMITER; digunakan untuk mengembalikan delimiter
menjadi semicolon (;) lagi. Eksekusi procedure dengan menekan
tombol F9 atau dengan mengklik Execute All.
DELIMITER $$
Delimiter adalah karakter atau string yang digunakan untuk menyatakan
akhir SQL statement. Default delemiter pada MySQL adalah semicolon
(;).Pada fungsi di atas, delimiter $$ digunakan untuk menyatakan awal
dari SQL statement.
DETERMINISTIC
Statement DETERMINISTICdigunakan untuk menentukan siapa saja
yang boleh mengakses/menggunakan function ini, apakah hanya user
selaku pembuatnya saja (deterministic) atau boleh diakses oleh siapa
saja (not deterministic).
BEGIN
Perintah begin ini digunakan untuk mengawali badan function.
END$$
Statement END$$ digunakan untuk mengakhiri badan function.
DELIMITER ;
StatementDELEMITER; digunakan untuk mengembalikan delimiter
menjadi semicolon (;) lagi. Eksekusi function dengan menekan tombol
F9 atau dengan mengklik Execute All.
SELECT PendapatanRestoran('2018-10-17');
Setelah SELECT PendapatanRestoran() di panggil, maka akan
menampilkan jumlah Total Pembayaran sesuai tanggal yang di
panggil dari tabel Pembayaran yaitu sebagai berikut.
Fungsi agregat merupakan fungsi standar pada SQL yang digunakan untuk
summary dan merupakan fungsi statistik dasar yang dikenakan pada suatu tabel
atau query. Fungsi agregat terdiri dari 5 jenis, yaitu : MAX yang digunakan untuk
menentukan nilai tertinggi dalam sebuah kolom, MIN yang digunakan untuk
menentukan nilai terendah dalam sebuah kolom, SUM yang digunakan untuk
mendapatkan nilai total dari sebuah kolom, AVG yang digunakan untuk mancari
nilai rata-rata dalam sebuah kolom dan COUNT yang digunakan untuk
menghitung jumlah data/record pada kolom.
Gambar 6.2.4ProcedureHitungTotal