Pola Pencocokan Pada MYSQL


MYSQL mengenal dua model pola pencocokkan,yaitu SQL pattern dan Extended Regular Expressions.Tujuan dari pola pencocokkan adalah mencari data sesuai dengan pola yang telah dgariskan.Dengan kata lain,query yang dihasilkan harus sesuai dengan aturan/pola yang telah dibuat.Dalammysql,standar pola SQL bersifat casesensitive.

A.   Pola pencocokkan dengan model SQL pattern: 
Gunakan tanda garis bawah(‘_’) jika mencocokkan dengan karakter tunggal dan, Gunakan tanda presentase(‘%’) jika mencocokan sejumlah sembarang karakter(termasuk karakter kosong).
 
(* Catatan:
JanganPernahmenggunakantanda atau<>ketikamenggunakanpolaSQl,gunakan LIKE atau NOT LIKE sebagai operator penghubung.

Mencari ‘Nama’ yang diawali huruf ‘B’: 
Mysql >select*from tugas4 where nama like ‘B%’; 
Mencari ‘Nama’ yang diakhiri dengan ‘Fy”: 
Mysql>select*from tugas4 where Nama like ‘%Fy’; 
Mencari ‘Nama’ yang mengandung karakter ‘W’: 
Mysql>select*from tugas4 where nama like ‘%W%’; 
Mencari ‘Nama’ yangterdiri atas tepat lima karakter,gunakan tanda ‘_’ sebanyak 5 : 
Mysql>select*from tugas4 where Nama like ‘_’;


B.      Pola Pencocokkan dengan model Extended 
Regular expressions : Untuk mencocokkan dengan pola yang diberikan harus menggunkan operator REGEXP dan NOT REGEXP atau bisa juga RLIKE dan NOT RLIKE.Kedua pasang operator itu adlh SAMA.Beberapa  karakteristik extended regular expressions yang perlu diperhatikan : 
§  ‘ . ’ Untuk mencari kesesuaian dengan karakter tunggal. 
§  ‘[…]’ Untuk mencari kesesuaian sembarang karakter yang terdaftar dalam kelas karakter. Sebagai contoh :‘[abc]’ sesuai dengan karakter ‘a’,’b’,’c’. 
§  ‘[az]’ untuk mencari sembarang karakter yang ada dalam rentang karakter. 
§  ‘[0-9]’ untuk mencari sembarang angka yang ada dalam rentang angka. 
§  ‘*’ menyatakkan sembarang nilai. Sebagai contoh; 
§  ‘X*’ akan menampilkan sembarang nilai yang diawali dengan karakter X. 
§  ‘[0-9]*’ akan menampilkan sembarang nilai yang diawali dengan angka antara   0-9 
§  ‘.*’ menampilkan sembarang nilai apapun.
 
Penguncian pola pencocokkan terhadap suatui nilai bisa dilakukan diawal (tambahan tanda ‘^’ diawal pola) ataupun diakhir (tanda’$’diakhir pola).
Contoh pola pencocokkan dengan menggunkan metode extended regular expressions: 

§  Mencari Nama yang diawali dengan huruf ‘B’,gunakan ‘^’ diawal kolom Nama. Mysql >select*from tugas4 where Nama REGEXP ‘^B’; 

§  Gunakan kata kunci BINARY untuk memaksa pola pencarian agar bersifat case-sensitive.Dengan demikian,printah query diatas bisa dipaksa untuk mencari Nama hanya yang berawalan huruf ‘b’ kecil(lowercase).Mysql >select*from tugas4 where Nama REGEXP BINARY ‘^b’; 

§  Untuk mencari nama yang diakhiri ‘Fy’ ,letakkan$ di akhir kolom Nama.Mysql >select*from tugas4 where Nama REGEXP ‘Fy$’; 

§  Untuk mencari Nama yang mengandung huruf ‘W’, gunakkan query berikut: Mysql >select*from tugas4 where Nama REGEXP ‘W’; 

§  Untuk mencari Nama yang terdiri atas tepat 5 karakter  , gunakan ‘^’ dan ‘$’ , letakkan diawal dan diakhir kolom Nama serta tambahkan 5 karakter titik ‘.’ yang diletakkan diantaranya. Mysql >select*from tugas4 where Nama REGEXP ‘^…..$’; 

§  Contoh sebelumnya bisa dituliskan dengan menggunakan {n} yang berarti diulang sebanyak -n- kali. Mysql >select*from tugas4 where Nama REGEXP ‘^.{5}$’;
 

0 komentar:

Posting Komentar