Rumah  >  Artikel  >  pangkalan data  >  Apakah perbezaan antara fungsi MySQL INSTR() dan FIND_IN_SET()?

Apakah perbezaan antara fungsi MySQL INSTR() dan FIND_IN_SET()?

王林
王林ke hadapan
2023-09-22 10:25:051086semak imbas

MySQL INSTR() 和 FIND_IN_SET() 函数有什么区别?

Seperti yang kita sedia maklum, kedua-dua fungsi digunakan untuk mencari rentetan berdasarkan parameter yang mereka sediakan, tetapi terdapat beberapa perbezaan ketara antaranya seperti yang ditunjukkan di bawah #🎜🎜 #

    Senarai rentetan yang digunakan oleh fungsi FIND_IN_SET() ialah rentetan yang mengandungi subrentetan dipisahkan koma. Manakala fungsi INSTR() mengandungi rentetan dari mana ia akan mencari kejadian pertama subrentetan, jika ia wujud.
  • Untuk integer, FIND_IN_SET() adalah lebih sesuai daripada fungsi INSTR(). Ia boleh difahami melalui contoh berikut
Contoh

mysql> Select IF(INSTR('10,11,12,13',2) > 0,1,0) As Result;
+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.05 sec)

mysql> Select IF(FIND_IN_SET(2,'10,11,12,13') > 0,1,0)As Result;
+--------+
| Result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)

Daripada set hasil contoh di atas, kita dapat melihat bahawa fungsi INSTR() mengembalikan 1 atau bahkan 2, kerana String tidak wujud dalam parameter. Tetapi fungsi FIND_IN_SET() mengembalikan 0, yang merupakan jawapan yang betul.

Atas ialah kandungan terperinci Apakah perbezaan antara fungsi MySQL INSTR() dan FIND_IN_SET()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam