Oracle LIKE

Oracle Like



Dalam Oracle dan pangkalan data hubungan lain, padanan corak ialah ciri popular yang membolehkan anda mencari corak rentetan menggunakan sintaks khas. Sebagai contoh, anda boleh mencari subrentetan dalam set rentetan yang besar menggunakan operator dan fungsi padanan corak.

Ini menjadikannya sangat berguna untuk membina klausa carian mudah tanpa dikenakan penalti prestasi yang ketara pada pangkalan data.







Dalam tutorial ini, anda akan menemui operator LIKE dalam Oracle untuk melakukan pertanyaan padanan corak.



Operator SEPERTI Oracle

Pengendali LIKE dalam Oracle membolehkan anda mencari corak tertentu dalam lajur tertentu. Sebagai contoh, anda boleh menggunakannya untuk mencari semua baris di mana nama pertama pelanggan bermula dengan corak 'Ja'.



Anda akan sering mendapati pengendali ini digunakan bersama dengan klausa SQL yang lain, seperti klausa WHERE, untuk menapis hasil kami berdasarkan corak tertentu.





Kita boleh menyatakan sintaks operator LIKE dalam SQL seperti yang ditunjukkan di bawah:

ekspresi SUKA corak [ MELARIKAN DIRI 'escape_character' ]



  1. Parameter ungkapan menentukan lajur yang anda ingin cari.
  2. Parameter corak mentakrifkan corak khusus yang anda ingin cari. Corak yang ditentukan boleh mengandungi aksara kad bebas seperti % dan _ untuk memadankan sebarang bilangan aksara atau aksara tunggal, masing-masing.
  3. Kami juga boleh memasukkan klausa ESCAPE untuk menentukan aksara melarikan diri yang digunakan untuk mencari aksara kad bebas sebenar.

Contoh Operator Oracle LIKE

Contoh berikut menunjukkan cara menggunakan operator LIKE dalam jadual Oracle.

Katakan kita mempunyai jadual yang mengandungi maklumat pelanggan seperti yang ditunjukkan di bawah:

Contoh 1 – Menggunakan % Aksara Kad Liar

Kita boleh menggunakan % aksara kad bebas untuk memadankan sebarang rentetan sifar atau lebih aksara. Sebagai contoh, kita boleh mencari semua entri dalam jadual yang mengandungi Nama 'Akan%'.

Ambil jadual pekerja yang ditunjukkan di bawah:

pilih first_name, last_name, gaji
daripada PEKERJA
tempat FIRST_NAME suka 'Akan%'
pesanan mengikut nama_pertama;

Pertanyaan sebelumnya memilih lajur first_name, last_name dan gaji daripada jadual pekerja dan menyusun nilai yang terhasil mengikut lajur first_name.

Kami juga menggabungkan klausa where bersama-sama dengan operator LIKE dengan % aksara kad bebas untuk hanya mengambil baris di mana nama pertama bermula dengan 'Akan'.

Ini harus mengembalikan baris sebagai:

Kita juga boleh menggunakan aksara kad bebas % untuk mengambil baris yang berakhir dengan corak tertentu.

Satu contoh ditunjukkan di bawah:

pilih first_name, last_name, gaji
daripada PEKERJA
tempat FIRST_NAME suka '%is'
pesanan mengikut nama_pertama;

Dalam kes ini, pertanyaan sebelumnya harus mengembalikan semua baris di mana nama pertama berakhir dengan 'er'. Contoh nilai yang terhasil ditunjukkan di bawah:

Pengendali LIKE pangkalan data Oracle adalah sensitif huruf besar secara lalai, jadi penting untuk mengingati perkara ini semasa mencari corak tertentu. Anda boleh menggunakan fungsi lain, seperti bawah dan atas, untuk menafikan tingkah laku ini.

Contoh 2 – Menggunakan Klausa Escape

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

pilih first_name, last_name, gaji, commission_pct
daripada PEKERJA
mana komisen_pct suka 'dua puluh\%' melarikan diri '\' ;

Pertanyaan sebelumnya memilih lajur first_name, last_name, gaji dan commission_pct daripada jadual EMPLOYEES. Klausa WHERE menggunakan operator LIKE dengan klausa ESCAPE untuk mengambil rekod yang lajur commission_pct mengandungi rentetan '20%' (dengan aksara % literal, bukan kad bebas).

Dalam kes ini, kami melepaskan aksara % dengan aksara sengkang ke belakang (\) apabila mencari rentetan 20%. Ini membolehkan pengendali LIKE mencari rentetan tepat '20%' dan bukannya menganggap % aksara sebagai kad bebas.

Pertanyaan ini akan mengembalikan semua baris daripada jadual EMPLOYEES di mana lajur komisen_pct mengandungi rentetan tepat '20%', bersama-sama dengan nama_pertama, nama_keluarga dan lajur gaji untuk baris tersebut.

Kesimpulan

Dalam siaran ini, anda mempelajari cara menggunakan operator LIKE dalam pangkalan data Oracle untuk mencari corak tertentu dalam jadual. Beberapa contoh disediakan untuk menyerlahkan menggunakan aksara kad bebas dan klausa ESCAPE.