Seperti yang kita tahu MySQL Query adalah bahasa yang digunakan untuk melakukan pengolahan data base, seperti select, insert,update dan delete. pada kesempatan kali ini kita kan membahas salah satu fungsi select dari MySQL. MySQL Query memiliki fungsi " SUBSTRING_INDEX " fungsi ini akan mengembalikan data hasil query berupa pemotongan nilai string. Dalam kasus tertentu kita terkadang membutuhkan data berupa sebagian dari sebuah nilai string, sehingga kita perlu melakukan pemotongan nilai string tersebut. Fungsi SUBSTRING_INDEX merupakan fungsi yang melakukan pemotongan pada suatu nilai string namun dengan menggunakan karakter tertentu yang terdapat dalam nilai string tersebut.
fungsi : SUBSTRING_INDEX(str, delim, count)
Keterangan :
str : nilai string yang akan kita potong
delim : karakter yang menjadi tanda pemisah dari nilai string
count : Jumlah karakter pemisah yang akan di potong
Contoh :
mysql> SELECT SUBSTRING_INDEX('www.nokenazt.blogspot.com', '.', 1);
-> 'www'
mysql> SELECT SUBSTRING_INDEX('www.nokenazt.blogspot.com', '.', 2);
-> 'www.nokenazt'
mysql> SELECT SUBSTRING_INDEX('www.nokenazt.blogspot.com', '.', -1);
-> 'com'
mysql> SELECT SUBSTRING_INDEX('www.nokenazt.blogspot.com', '.', -2);
-> 'blogspot.com'
mysql> SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('www.nokenazt.blogspot.com','.',2),'.',-1);
-> 'nokenazt'
Contoh penerapannya :
Misalnya kita memiliki data pada tabel kariawan seperti berikut ini :
nomor | nama |
NA-212-programer | andreas |
NK-303-akunting | andre nokenazt |
dari contoh data diatas kita ingin memecah data nomor karyawan, contoh penerapannya dalam query sbb:
mysql> SELECT SUBSTRING_INDEX('nomor', '-', 1),nama FROM kariawan;
hasil query :
nomor | nama |
NA | andreas |
NK | andre nokenazt |
mysql> SELECT SUBSTRING_INDEX('nomor', '-', 2), nama FROM kariawan;
hasil query :
nomor | nama |
NA-212 | andreas |
NK-303 | andre nokenazt |
mysql> SELECT SUBSTRING_INDEX('nomor', '-', -1),nama FROM kariawan;
hasil query :
nomor | nama |
programer | andreas |
akunting | andre nokenazt |
mysql> SELECT SUBSTRING_INDEX('nomor', '-', -2),nama FROM kariawan;
hasil query :
nomor | nama |
212-programer | andreas |
303-akunting | andre nokenazt |
mysql> SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('nomor', '-', 2),'-',-1) ,nama FROM kariawan;
hasil query :
nomor | nama |
212 | andreas |
303 | andre nokenazt |
Nah dengan menggunakan SUBSTRING_INDEX ini kita bisa memecah sebuah nilai string. semoga bermanfaat
Terima kasih atas sharing buat belajar query-querynya untuk memecah data (Substring) yang kalau di script php bisa menggunakan explode.
ReplyDeleteKunjungi blog saya ya: https://tedsu.mahasiswa.atmaluhur.ac.id
dan website kampus saya: http://www.atmaluhur.ac.id
makasih gan saya bisa bljr memkai sql ini
ReplyDeleteIni website saya : https://rikaristilia.mahasiswa.atmaluhur.ac.id/
Ini website kampus saya : http://www.atmaluhur.ac.id
terima kasih, sangat membantu
ReplyDelete