BAB I PENDAHULUAN
1.1. Dasar Teori
1.1.1. Fungsi Aritmatika Fungsi aritmetika adalah fungsi yang berhubungan langsung dengan manipulasi aritmetika. Fungsi agregate ini meupakan fungsi uilt-in yang hampir pasti ada dalam sistem database relasional. Berikut fungsi aritmatika yang tersedia di MySQL : a.
AVG(ekspresi) Fungsi ini digunakan untuk mencari rata-rata nilai dalam suatu kolom dari suatu tabel atau ekspresi. Ekspresi dalam fungsi AVG umumnya adalah nama kolom dengan tipe data umerik.
b.
COUNT(x) Fungsi ini digunakan untuk menghitung jumlah record/baris dari suatu kolom atau suatu tabel. X merupakan nama kolom dari tabel yang ingin dicari jumlah baris datanya.
c.
MAX(ekspresi) Fungsi ini digunakan untuk mencari nilai terbesar dari suatu kolom kol om dalat suatu tabel atau ekspresi. Kolom yang dicari nilai terbesarnya memiliki tipe data numerik.
d.
MIN(ekspresi) Fungsi MIN() ini merupakan kebalikan dari fungsi MAX(). Fungsi ini mencari nilai terkecil dari suatu kolom dalam suatu tabel atau ekspresi.
e.
STD(ekspresi) dan STDDEV(ekspresi) Fungsi ini dapat kita gunakan untuk mendapatkan standar deviasi dari suatu kolom dalam suatu tabel. Ekspresi biasanya menyatakan kolom dalam suatu tabel dengan tipe data numerik. SUM(ekspresi) Fungsi ini digunakan untuk mendapatkan nilai total dari suatu kolom dalam suatu tabel atau ekspresi (Alexandra, 2011).
1.1.2. Pencarian Data dari Tabel MySQL (SELECT...LIKE...) Pencarian data dari database merupakan kegiatan rutinitas dalam administrasi database, dalam tutorial belajar MySQL kali ini kita akan membahas cara pencarian data dari tabel MySQL menggunakan query SELECT..LIKE untuk pencarian sederhana. MySQL menyediakan query SELECT...LIKE... untuk menampilkan tabel berdasarkan
pencarian
karakter
sederhana.
Format
dasar
struktur
SELECT...LIKE... adalah sebagai berikut : SELECT nama_kolom_tampil FROM nama_tabel WHERE nama_kolom_cari
LIKE keyword_pencarian
nama_kolom_tampil adalah nama dari kolom yang akan kita tampilkan, bisa
semua kolom dalam tabel, atau hanya kolom tertentu saja.
nama_tabel adalah nama tabel dimana nama_kolom_tampil berada.
nama_kolom_cari adalah kolom yang akan kita gunakan untuk pencarian.
keyword_pencarian merupakan kata kunci yang digunakan untuk pencarian.
Cara penulisan kata kunci ini akan kita bahas lebih lanjut. MySQL menyediakan 2 karakter khusus untuk pencarian LIKE, yaitu karakter ‘ _’ dan ‘%’, penjelasannya:
_ : karakter ganti yang cocok untuk satu karakter apa saja. % : karakter ganti yang cocok untuk karakter apa saja dengan panjang karakter tidak terbatas, termasuk tidak ada karakter.
Kita dapat mengganti kata kunci hasil pencarian tersebut dengan karakter lain, sebagai contoh:
‘S%’ : Cocok dengan kata yang diawali dengan S, dan diikuti dengan karakter apa saja, contoh: ‘S’, ‘Sa’, ‘Si’, ‘Saaaaaa’, ‘Susi’, dan ‘Sabrina Sari’.
‘S_ ’: Cocok dengan kata yang diawali dengan S, dan diikuti dengan satu karakter apa saja, contoh: ‘Si’, ‘Sa’, ‘Su’, ‘Se’, dan ‘St’.
‘A__i’: Cocok dengan kata yang diawali dengan ‘ A’, diikuti oleh 2 karakter
bebas, namun diakhiri dengan i, contoh: ‘Andi’, ‘ardi’, ‘aaai’.
‘%e’: Cocok dengan seluruh kata dengan panjang ber apapun yang diakhiri dengan huruf ‘ e’, contoh: ‘Kece’, ‘Kue’, dan ‘mie’.
‘%dia%’: Cocok dengan seluruh kata yang mengandung kata ‘ dia’, contoh: ‘media’, ‘kemudian’, ‘dia’, dan ‘diaaaa’
(Andre, 2013).
1.1.3. Pencarian Data dari Tabel MySQL (SELECT...REGEXP...) Bagi yang sudah pernah mengenal bahasa pemrograman lain, mungkin sudah mengenal Reguler Expression yang kadang disingkat dengan RegExp, atau hanya RE. Dalam bahasa sederhananya, Regular Expression adalah kumpulan huruf atau karakter yang digunakan untuk pencocokan pola (pattern matching) .
Pola disini contohnya ‘ pola untuk kata yang diawali dengan huruf a dan diakhiri dengan huruf j’, atau yang sedikit rumit seperti ‘ pola untuk kata yang diawali huruf a,b, c dengan panjang maksimal 5 huruf, mengandung minimal sebuah angka’.
Cakupan Regular Expression cukup luas, dan tidak terbatas hanya pada MySQL saja. Hampir semua bahasa pemrograman komputer menyediakan fungsi khusus untuk regular expression. Dalam tutorial ini saya hanya membahas sebagian kecil dari RegExp. Jika pada query SELECT..LIKE kita menggunakan pola ‘s%’ sebagai kata kunci yang berarti ‘kata yang diawali dengan huruf s dan memiliki banyak huruf 1 atau lebih’ dalam regular expression, penulisannya menjadi ‘^S.*’. Terlihat sedikit
rumit, tapi mari kita pelajari aturan penulisan RegExp:
. : tanda titik dalam RegExp berarti sebuah karakter apa saja
[ … ] : tanda kurung siku ini berarti kumpulan karakter. Misalkan [abc] akan cocok dengan ‘a’, ‘b’, atau ‘c’. kita bisa juga menggunakan jangkauan
(range), contohnya [a-z] akan cocok dengan seluruh huruf, [0-9] akan cocok dengan seluruh angka.
*: tanda bintang ini akan cocok dengan 0 atau lebih karakter sebelumnya. Misalkan ‘a*’ berarti akan cocok dengan seluruh kata yang mengandung 0
atau lebih a.
^: tanda pangkat atau topi ini menandakan berada di awal kata.
$: tanda dollar ini berarti bahwa pola berada di akhir kata.
Mari kita contohkan penggunakan pola RegExp:
‘ab*’: Pola ini berarti akan cocok dengan seluruh kata yang mengandung a dan diikuti oleh b atau tidak sama sekali. Contohnya: ‘a’, ‘ab’, ‘abbbbbb’, dan
juga ‘kebab’, karena untuk RegExp, kita harus menyatakan dimana karakter itu muncul.
‘^ab*’: Pola ini sama artinya dengan ‘ab*’ seperti diatas, namun tanda ^ menyatakan bahwa pola ini harus berada di awal kata, sehingga ‘kebab’ tidak
akan cocok.
‘^s..i$’: Pola ini akan cocok dengan seluruh kata yang diawali dengan s, dan
diakhiri dengan i, terdiri dari 4 huruf. Contohnya: susi, sapi, dan siti (Andre, 2013).
1.2. Permasalahan
1.1.1.
Perhatikan tabel isiruang yang telah Saudara hasilkan di Praktikum #2. Field apa yang digunakan sebagai kunci primernya? Kolom pertama dari nobarang adalah sebagai berikut: Angka 1
: meja
Angka 3: LCD
Angka 2
: kursi
Angka 4: layar peraga/whiteboard
Sedangkan kolom ke 2 dan 3 dari nobarang adalah tahun produksi. Susun perintah untuk pengolahan-pengolahan sebagai berikut: a. Menampilkan noruang dan nobarang dari tabel isiruang, yang di dalam ruang terkait terdapat Layar Peraga atau Whiteboard. b. Menghitung jumlah LCD yang dimiliki, oleh ruang-ruang yang ada di dalam tabel isiruang. c. Menampilkan jumlah kursi terbanyak pada ruang yang berlokasi di blokgedung A, yang datanya disimpan di dalam tabel isiruang.
1.1.1.
Dari data akademik di dalam tabel prestasi , susun perintah untuk: a. Menampilkan jumlah mahasiswa per wali. b. Menampilkan nama, nim, wali dengan ipk tertinggi dikelompokkan per wali. c. Menampilkan perolehan ipk maksimum, ipk minimum, sks maksimum, sks minimum yang dikelompokkan per wali.
BAB II PEMBAHASAN 2.1.
Pada tabel isiruang, field yang digunakan sebagai primary key adalah field noruang dan nobarang.
a.
Untuk menampilkan noruang dan nobarang dari tabel isiruang, dimana ruang tersebut tedapat Layar Peraga atau Whiteboard maka tabel yang digunakan adalah tabel isiruang dan menggunakan field noruang dan nobarang, kemudian menggunakan operator like, sehingga statement SQL nya sebagai berikut : Select noruang, nobarang From isiruang Where nobarang like ‘4%’
;
Dalam MySQL :
b.
Untuk menampilkan jumlah LCD yang dimilik oleh ruang-ruang dari tabel isiruang, maka tabel yang digunakan adalah tabel isiruang dan menggunakan field jumlah, untuk menghitung jumlah digunakan operator count(*), kemudian menggunakan operator like, sehingga statement SQL nya sebagai berikut : Select count(*) as Jumlah_LCD From isiruang Where nobarang like ‘3%’
;
Dalam MySQL :
c.
Untuk menampilkan jumlah kursi terbanyak yang dimilik oleh ruang-ruang yang belokasi di blokgedung A dari tabel isiruang, maka tabel yang digunakan adalah tabel isiruang dan menggunakan field jumlah, noruang, dan nobarang, untuk menghitung nilai maksimum digunakan operator max(), kemudian menggunakan operator like, sehingga statement SQL nya sebagai berikut : Select max(jumlah) as Kursi_maks From isiruang Where noruang like ‘A%’ and nobarang like ‘2%’
;
Dalam MySQL :
2.2.
Dari data akademik di dalam tabel prestasi, susun perintah untuk : a.
Menampilkan jumlah mahasiswa per wali, maka digunakan operator count(*) untuk menghitung jumlah dan group by untuk mengelompokan berdasarkan field yang ditentukan (dalam pembahasan ini field yang digunakan adalah field wali). Berikut statement SQL nya : Select wali, count(*) as jumlah From prestasi Group by wali ;
Dalam MySQL :
b.
Menampilkan nama, nim, wali dengan ipk tertinggi dikelompokan per wali, maka digunakan operator max() untuk mencari nilai tertinggi dan operator regexp digunakan untuk mencari data. Berikut statement SQL nya : Select nama, nim, wali From prestasi Where ipk = (select max(ipk) from prestasi where wali regexp ‘0$’)
or ipk = (select max(ipk) from prestasi where wal i regexp ‘2$’) or ipk = (select max(ipk) from prestasi where wali regexp ‘4$’)
;
Dalam MySQL :
c.
Menampilkan perolehan ipk maksimum, ipk minimum, sks maksimum, sks minimum yang dikelompokan per wali maka digunakan operator max() untuk mencari nilai tertinggi, operator min() untuk mencari nilai terkecil, dan group by untuk mengelompokan berdasarkan field yang ditentukan (dalam pembahasan ini field yang digunakan adalah field wali). Berikut statement SQL nya : Select wali, max(ipk) as ipk_maksimum, min(ipk) as ipk_minimum, max(sks) as sks_maksimum, min(sks) as sks_minimum From prestasi Group by wali ;
Dalam MySQL :
BAB III KESIMPULAN
Pada praktikum ini dapat disimpulkan bahwa dalam MySQL terdapat perintah-perintah dasar statistika yang sering dipakai dan dapat membantu dalam pengolahan database dan tabel dengan field yang bertipe numerik, yaitu : 1.
Count(*) : digunakan untuk menghitung banyaknya data / record
2.
Max()
: digunakan untuk mencari nilai tertinggi dari suatu field
3.
Min()
: digunakan untuk mencari nilai terendah dari suatu field
4.
Avg()
: digunakan untuk menghitung nilai rata-rata dari suatu field
5.
Sum()
: digunakan untuk menghitung jumlah nilai dari suatu field
Selain itu, terdapat juga perintah-perintah dasar MySQL yang digunakan untuk pengolahan data non numerik atau string, berikut operator yang dapat digunakan : 1.
Operator LIKE
: digunakan untuk menampilkan tabel/data berdasarkan pencarian sederhana dimana data menyerupai atau hampir sama dengan kriteria yang diinginkan.
2.
Operator REGEXP : memiliki fungsi yang sama dengan operato LIKE, namun biasanya digunakan untuk pencarian data yang rumit
DAFTAR PUSTAKA
Alexandra, Cynthia. 2011. Fungsi-Fungsi pada MySQL. http://andralifenotes.blogspot.co.id/2011/02/fungsi-sistem-fungsi-sistem-adalah.html. (Diakses tanggal 11 Mei 2017). Andre. 2013. MySQL. http://www.duniailkom.com/tutorial-belajar-mysql-pencarian-datadari-tabel-mysql-dengan-regular-expression-regexp/. (Diakses tanggal 11 Mei 2017). Andre. 2013. MySQL. http://www.duniailkom.com/tutorial-belajar-mysql-pencarian-datadari-tabel-mysql-select-like/. (Diakses tanggal 11 Mei 2017).