Fungsi MySQL INSTR().

Fungsi Mysql Instr



Dalam tutorial ini, kita akan belajar cara menggunakan fungsi MySQL INSTR() untuk menentukan kedudukan kejadian pertama subrentetan yang diberikan.

Fungsi MySQL INSTR().

Menggunakan fungsi instr(), kami boleh menyediakan rentetan dan subrentetan. Fungsi ini akan menentukan sama ada subrentetan wujud dalam rentetan sumber. Jika subrentetan wujud, fungsi akan mengembalikan kedudukan kejadian pertama subrentetan dalam rentetan sumber.

Jika subrentetan tidak wujud dalam rentetan sumber, fungsi akan mengembalikan 0.







Berikut menunjukkan sintaks fungsi instr():



INSTR(src_string, sub_string);

Fungsi ini menerima dua parameter utama:



  1. src_string merujuk kepada rentetan sumber yang anda ingin cari.
  2. Sub_string mentakrifkan substring yang anda cari.

Adalah baik untuk diingat bahawa fungsi instr() adalah tidak peka huruf besar-kecil. Oleh itu, fungsi hanya akan mencari corak padanan tanpa mengambil kira selongsong aksara,





Untuk melakukan carian sensitif huruf besar-besaran, anda boleh menggunakan alat lain, seperti pengendali binari.

Contoh Penggunaan Fungsi

Contoh berikut menunjukkan cara kita boleh menggunakan fungsi instr() untuk mencari subrentetan tertentu.



PILIH INSTR('MySQL ialah enjin pangkalan data yang hebat', 'pangkalan data') sebagai pos;

Contoh di atas akan mengembalikan kedudukan permulaan rentetan 'pangkalan data' daripada rentetan sumber. Dalam kes ini, kedudukan rentetan pangkalan data ialah 21 seperti yang ditunjukkan dalam output di bawah:

pos|

---+

21|

Contoh 2

Kita boleh menggunakan fungsi lower() atau atas untuk menukar rentetan kepada huruf kecil atau huruf besar. Ini boleh membantu kami mengatasi sifat sensitiviti huruf besar bagi fungsi tersebut.

Contoh:

SELECT INSTR(lower('MySQL is an awesome database engine'), lower('DATABASE')) as pos;

Keputusan:

pos|

---+

21|

Ini akan mengembalikan nilai yang sama seperti contoh pertama, kerana rentetan sumber dan subrentetan ditukar kepada huruf kecil sebelum operasi carian.

Contoh 3

Kita juga boleh menggunakan fungsi instr() dengan lajur jadual, seperti yang ditunjukkan dalam sintaks di bawah.

PILIH INSTR(nama_lajur, 'subrentetan')

DARI table_name;

Contoh:

CIPTA blog JADUAL (

id INT BUKAN NULL AUTO_INCREMENT KUNCI UTAMA,

tajuk VARCHAR(255) BUKAN NULL,

kandungan TEKS BUKAN NULL,

date_posted TARIKH BUKAN NULL,

pengarang VARCHAR(255) NOT NULL

);

Masukkan beberapa data:

MASUKKAN KE DALAM blog (tajuk, kandungan, tarikh_siaran, pengarang)

NILAI ('Catatan Blog Pertama Saya', 'Ini ialah kandungan catatan blog pertama saya.', '2022-12-09', 'Jane Doe');

MASUKKAN KE DALAM blog (tajuk, kandungan, tarikh_siaran, pengarang)

NILAI ('Catatan Blog Kedua Saya', 'Ini adalah kandungan catatan blog kedua saya.', '2022-12-10', 'Jane Doe');

MASUKKAN KE DALAM blog (tajuk, kandungan, tarikh_siaran, pengarang)

NILAI ('Catatan Blog Ketiga Saya', 'Ini adalah kandungan catatan blog ketiga saya.', '2022-12-11', 'Jane Doe');

pilih * daripada blog;

Jadual terhasil:

Kita boleh menggunakan fungsi instr() untuk mendapatkan kedudukan subrentetan 'blog' dalam lajur kandungan seperti yang ditunjukkan:

pilih tajuk, instr(kandungan, 'siaran') daripada blog;

Keputusan:

Kesimpulan

Dalam tutorial ini, anda mempelajari cara menggunakan fungsi INSTR() dalam MySQL untuk mencari kedudukan subrentetan dalam rentetan. Fungsi ini adalah sensitif huruf besar-besaran. Oleh itu, anda mungkin perlu menggunakan fungsi seperti bawah dan atas untuk menukar rentetan carian kepada kes yang anda inginkan.