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

Si « Pos » n'est pas dans la plage de longueur de la chaîne, quel sera le résultat dans la fonction INSERT(str, Pos, len, newstr) ?

WBOY
Libérer: 2023-08-24 13:21:06
avant
1390 Les gens l'ont consulté

如果'Pos'不在字符串的长度范围内,在函数INSERT(str, Pos, len, newstr)中,会得到什么结果?

La fonction MySQL INSERT() n'effectue pas l'opération d'insertion lorsque la position d'insertion n'est pas dans la plage de longueur de chaîne. Il y a certains cas, comme lorsque nous transmettons une valeur négative ou une valeur 0 (zéro), ou lorsque la valeur est supérieure à 2 valeurs du nombre total de caractères dans la chaîne d'origine, nous pouvons dire que 'pos' n'est pas dans la longueur de la chaîne. Cela peut être compris à travers l'exemple suivant :

Exemple

La requête ci-dessous n'effectuera pas l'opération d'insertion car 'pos' n'est pas dans la plage de longueur de chaîne, c'est-à-dire qu'il s'agit d'une valeur négative.

mysql> Select INSERT('Tutorialspoint',-1,4,'.com');
+--------------------------------------+
| INSERT('Tutorialspoint',-1,4,'.com') |
+--------------------------------------+
| Tutorialspoint                       |
+--------------------------------------+
1 row in set (0.00 sec)
Copier après la connexion

La requête ci-dessous n'effectuera pas l'insertion car 'pos' n'est pas compris dans la longueur de la chaîne, qui est 0 (zéro).

mysql> Select INSERT('Tutorialspoint',0,4,'.com');
+-------------------------------------+
| INSERT('Tutorialspoint',0,4,'.com') |
+-------------------------------------+
| Tutorialspoint                      |
+-------------------------------------+
1 row in set (0.00 sec)
Copier après la connexion

La requête suivante ne fera pas d'insertion car 'pos' n'est pas dans la longueur de la chaîne, c'est-à-dire une valeur de 2 de plus que le nombre de caractères dans la chaîne d'origine. Dans l'exemple ci-dessous, la chaîne d'origine « Tutorialspoint » comporte 14 caractères et nous avons donné la valeur de position 16, donc aucune insertion n'aura lieu.

mysql> Select INSERT('Tutorialspoint',16,4,'.com');
+--------------------------------------+
| INSERT('Tutorialspoint',16,4,'.com') |
+--------------------------------------+
| Tutorialspoint                       |
+--------------------------------------+
1 row in set (0.00 sec)
Copier après la connexion

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