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

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

王林
Lepaskan: 2023-09-22 10:25:05
ke hadapan
1177 orang telah melayarinya

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)
Salin selepas log masuk

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 Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan