Maison > base de données > tutoriel mysql > le corps du texte

Quelle est la différence entre les fonctions MySQL INSTR() et FIND_IN_SET() ?

王林
Libérer: 2023-09-22 10:25:05
avant
1103 Les gens l'ont consulté

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

Comme nous le savons tous, les deux fonctions sont utilisées pour rechercher des chaînes en fonction des arguments qu'elles fournissent, mais il existe des différences significatives entre elles, comme indiqué ci-dessous

  • La liste des chaînes utilisées par la fonction FIND_IN_SET() est lui-même une chaîne A contenant des sous-chaînes séparées par des virgules. Alors que la fonction INSTR() contient une chaîne à partir de laquelle elle trouvera la première occurrence de la sous-chaîne, si elle existe.
  • Pour les entiers, FIND_IN_SET() est plus adaptée que la fonction INSTR(). Cela peut être compris à travers l'exemple suivant

Exemple

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)
Copier après la connexion

À partir du jeu de résultats de l'exemple ci-dessus, nous pouvons voir que la fonction INSTR() renvoie 1 voire 2 car la chaîne n'est pas présente dans le paramètre. Mais la fonction FIND_IN_SET() renvoie 0, ce qui est la bonne réponse.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal