SUKA Oracle

Suka Oracle



Di Oracle dan database relasional lainnya, pencocokan pola adalah fitur populer yang memungkinkan Anda mencari pola string menggunakan sintaksis khusus. Misalnya, Anda dapat mencari substring dalam sekumpulan besar string menggunakan operator dan fungsi pencocokan pola.

Ini membuatnya sangat berguna untuk membuat klausa pencarian sederhana tanpa menimbulkan penalti kinerja yang signifikan pada database.







Dalam tutorial ini, Anda akan menemukan operator LIKE di Oracle untuk melakukan kueri pencocokan pola.



Operator SEPERTI Oracle

Operator LIKE di Oracle memungkinkan Anda untuk mencari pola tertentu di kolom tertentu. Misalnya, Anda dapat menggunakannya untuk menemukan semua baris tempat nama depan pelanggan dimulai dengan pola 'Ja'.



Anda akan sering menemukan operator ini digunakan bersamaan dengan klausa SQL lainnya, seperti klausa WHERE, untuk memfilter hasil kami berdasarkan pola tertentu.





Kita dapat mengekspresikan sintaks operator LIKE di SQL seperti yang ditunjukkan di bawah ini:

pola ekspresi SEPERTI [ MELARIKAN DIRI 'escape_character' ]



  1. Parameter ekspresi menentukan kolom yang ingin Anda cari.
  2. Parameter pola menentukan pola spesifik yang ingin Anda cari. Pola yang ditentukan dapat berisi karakter wildcard seperti % dan _ untuk mencocokkan masing-masing sejumlah karakter atau satu karakter.
  3. Kami juga dapat menyertakan klausa ESCAPE untuk menentukan karakter escape yang digunakan untuk mencari karakter wildcard yang sebenarnya.

Contoh Operator LIKE Oracle

Contoh berikut menunjukkan cara menggunakan operator LIKE di tabel Oracle.

Misalkan kita memiliki tabel yang berisi informasi pelanggan seperti yang ditunjukkan di bawah ini:

Contoh 1 – Menggunakan % Karakter Wildcard

Kita dapat menggunakan % karakter wildcard untuk mencocokkan string dengan nol atau lebih karakter. Misalnya, kita dapat menemukan semua entri dalam tabel yang berisi Nama 'Will%'.

Ambil tabel karyawan yang ditunjukkan di bawah ini:

Pilih first_name, last_name, gaji
dari KARYAWAN
di mana FIRST_NAME suka 'Akan%'
pesan berdasarkan nama_depan;

Kueri sebelumnya memilih kolom nama_depan, nama_belakang, dan gaji dari tabel karyawan dan mengurutkan nilai yang dihasilkan berdasarkan kolom nama_depan.

Kami juga menggabungkan klausa where bersama dengan operator LIKE dengan % karakter wildcard untuk hanya mengambil baris dengan nama depan yang diawali dengan 'Will'.

Ini harus mengembalikan baris sebagai:

Kita juga bisa menggunakan % karakter wildcard untuk mengambil baris yang diakhiri dengan pola tertentu.

Contoh ditunjukkan di bawah ini:

Pilih first_name, last_name, gaji
dari KARYAWAN
di mana FIRST_NAME suka '%adalah'
pesan berdasarkan nama_depan;

Dalam hal ini, kueri sebelumnya harus mengembalikan semua baris di mana nama depan diakhiri dengan 'er'. Contoh nilai yang dihasilkan ditunjukkan di bawah ini:

Operator LIKE database Oracle peka huruf besar-kecil secara default, jadi penting untuk mengingat hal ini saat mencari pola tertentu. Anda dapat menggunakan fungsi lain, seperti lower dan upper, untuk meniadakan perilaku ini.

Contoh 2 – Menggunakan Escape Clause

Contoh berikut menunjukkan cara menggunakan klausa ESCAPE di operator Oracle LIKE:

Pilih first_name, last_name, gaji, komisi_persen
dari KARYAWAN
di mana commission_pct suka 'dua puluh\%' melarikan diri '\' ;

Kueri sebelumnya memilih kolom first_name, last_name, salary, dan commission_pct dari tabel EMPLOYEES. Klausa WHERE menggunakan operator LIKE dengan klausa ESCAPE untuk mengambil catatan di mana kolom commission_pct berisi string '20%' (dengan karakter % literal, bukan wildcard).

Dalam hal ini, kami meng-escape karakter % dengan karakter backslash (\) saat mencari string 20%. Ini memungkinkan operator LIKE untuk mencari string yang tepat '20%' alih-alih memperlakukan karakter % sebagai wildcard.

Kueri ini akan mengembalikan semua baris dari tabel EMPLOYEES di mana kolom commission_pct berisi string persis '20%', bersama dengan kolom first_name, last_name, dan salary untuk baris tersebut.

Kesimpulan

Dalam posting ini, Anda belajar bagaimana menggunakan operator LIKE di database Oracle untuk mencari pola tertentu dalam sebuah tabel. Beberapa contoh disediakan untuk disorot menggunakan karakter wildcard dan klausa ESCAPE.