Maison >base de données >tutoriel mysql >Comment intercepter une partie d'un champ à l'aide d'une instruction SQL
En SQL, vous pouvez utiliser l'instruction SUBSTRING pour intercepter une partie d'un champ. Le format de syntaxe est "SUBSTRING (chaîne, position de départ, longueur d'interception)". La fonction de sous-chaîne en SQL est utilisée pour récupérer une partie des données d'un champ
L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.
SUBSTRING ( expression, start, length )
Paramètres
expression
Chaîne, chaîne binaire, texte, image, colonne ou expression contenant des colonnes. N'utilisez pas d'expressions contenant des fonctions d'agrégation.
start
Un entier ou une expression qui peut être implicitement convertie en int, spécifiant la position de départ de la sous-chaîne, et l'index commence à 1.
length
Un entier ou une expression qui peut être implicitement converti en int, spécifiant la longueur de la sous-chaîne. Après tests, il a été constaté que ne peut être qu'un nombre non négatif .
Valeur de retour
1. Si l'expression est un type de données binaires pris en charge, les données binaires sont renvoyées pour l'instant.
2. Si l'expression est un type de données caractère pris en charge, renvoie les données caractère.
(1) Si l'index de start commence à 1, la chaîne sera interceptée à partir du premier caractère de l'expression, et à partir de 2, elle sera interceptée à partir du deuxième caractère de l'analogie.
Par exemple :
select SUBSTRING('abcde',1,2) 返回结果 ab select SUBSTRING('abcde',2,3) 返回结果 bcd select SUBSTRING('abcde',1,0) 返回结果为空 select SUBSTRING('abcde',0,8) 返回结果为abcde,注意后面没有空格了。
(2) Si l'indice de début commence à moins de 1 (0 ou nombre négatif), la longueur renvoyée est égale à partir de 1, et la longueur interceptée est length - (la valeur absolue de (start - 1)), renvoie null si la différence est négative.
Par exemple : || ci-dessous représente le calcul de la valeur absolue
select SUBSTRING('abcde',0,2) 返回结果为 a , 计算公式为SUBSTRING(1,2-|2-1|) select SUBSTRING('abcde',0,-1) 返回错误提示“传递到 substring 函数的长度参数无效” select SUBSTRING('abcde',-1,2) 返回结果为空, 计算公式为SUBSTRING(1,2-|-1-1|) select SUBSTRING('abcde',-5,3) 返回结果为空, 计算公式为SUBSTRING(1,3-|-5-1|) select SUBSTRING('abcde',-1,4) 返回结果为ab, 计算公式为SUBSTRING(1,4-|-1-1|) select SUBSTRING('abcde',-2,8) 返回结果为abcde, 计算公式为SUBSTRING(1,8-|-2-1|)
Recommandations d'apprentissage associées : Tutoriel MySQL(vidéo)
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!