Maison > base de données > tutoriel mysql > Comment intercepter une partie d'un champ à l'aide d'une instruction SQL

Comment intercepter une partie d'un champ à l'aide d'une instruction SQL

醉折花枝作酒筹
Libérer: 2021-06-18 15:06:00
original
21885 Les gens l'ont consulté

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

Comment intercepter une partie d'un champ à l'aide d'une instruction SQL

L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.

SUBSTRING ( expression, start, length )
Copier après la connexion

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,注意后面没有空格了。
Copier après la connexion

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

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!

Étiquettes associées:
sql
source:php.cn
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