Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
LENfonction
Renvoie la longueur de la chaîne spécifiée en tant que nombre de caractères.
Syntaxe
LENest un synonyme deLENGTHfonction, CHAR_ LENGTH fonctionCHARACTER_ LENGTH fonction, etTEXTLENfonction.
LEN(expression)
Argument
- expression
-
Chaîne
CHAR
, chaîneVARCHAR
, expressionVARBYTE
ou expression qui équivaut implicitement à un typeCHAR
,VARCHAR
ouVARBYTE
.
Type de retour
- INTEGER
-
La LEN fonction renvoie un entier indiquant le nombre de caractères de la chaîne d'entrée.
Si la chaîne d'entrée est une chaîne de caractères, la LEN fonction renvoie le nombre réel de caractères dans les chaînes multi-octets, et non le nombre d'octets. Par exemple, une colonne
VARCHAR(12)
est nécessaire pour stocker trois caractères chinois de quatre octets. La LEN fonction retournera3
pour cette même chaîne. Pour obtenir la longueur d’une chaîne en octets, utilisez la fonction OCTET_LENGTH.
Notes d’utilisation
Si expression est une chaîne CHAR
, les espaces de fin ne sont pas comptés.
Si expression est une chaîne VARCHAR
, les espaces de fin sont comptés.
Exemples
Pour renvoyer le nombre d’octets et le nombre de caractères dans la chaîne français
, utilisez l’exemple suivant.
SELECT OCTET_LENGTH('français'), LEN('français');
+--------------+-----+ | octet_length | len | +--------------+-----+ | 9 | 8 | +--------------+-----+
Pour renvoyer le nombre d'octets et le nombre de caractères de la chaîne français
sans utiliser la LENGTH fonction OCTET _, utilisez l'exemple suivant. Pour plus d’informations, consultez le CASTfonction.
SELECT LEN(CAST('français' AS VARBYTE)) as bytes, LEN('français');
+-------+-----+ | bytes | len | +-------+-----+ | 9 | 8 | +-------+-----+
Pour renvoyer le nombre de caractères dans les chaînes cat
sans les espaces de fin, cat
avec trois espaces de fin, cat
avec trois espaces de fin convertis en CHAR
de longueur 6, et cat
avec trois espaces de fin convertis en VARCHAR
de longueur 6, utilisez l’exemple suivant. Notez que la fonction ne compte pas les espaces de fin des chaînes CHAR
, mais qu’elle compte les espaces de fin des chaînes VARCHAR
.
SELECT LEN('cat'), LEN('cat '), LEN(CAST('cat ' AS CHAR(6))) AS len_char, LEN(CAST('cat ' AS VARCHAR(6))) AS len_varchar;
+-----+-----+----------+-------------+ | len | len | len_char | len_varchar | +-----+-----+----------+-------------+ | 3 | 6 | 3 | 6 | +-----+-----+----------+-------------+
L'exemple suivant utilise les données de la VENUE table de l'TICKITexemple de base de données. Pour de plus amples informations, veuillez consulter Exemple de base de données.
Pour renvoyer les 10 noms de lieux les plus longs du VENUE tableau, utilisez l'exemple suivant.
SELECT venuename, LEN(venuename) FROM venue ORDER BY 2 DESC, 1 LIMIT 10;
+-----------------------------------------+-----+ | venuename | len | +-----------------------------------------+-----+ | Saratoga Springs Performing Arts Center | 39 | | Lincoln Center for the Performing Arts | 38 | | Nassau Veterans Memorial Coliseum | 33 | | Jacksonville Municipal Stadium | 30 | | Rangers BallPark in Arlington | 29 | | University of Phoenix Stadium | 29 | | Circle in the Square Theatre | 28 | | Hubert H. Humphrey Metrodome | 28 | | Oriole Park at Camden Yards | 27 | | Dick's Sporting Goods Park | 26 | +-----------------------------------------+-----+