Maison > base de données > tutoriel mysql > Explication détaillée de l'utilisation de la fonction CHARACTER_LENGTH() dans MySQL

Explication détaillée de l'utilisation de la fonction CHARACTER_LENGTH() dans MySQL

藏色散人
Libérer: 2019-04-25 17:06:09
original
8097 Les gens l'ont consulté

Dans MySQL, la fonction CHARACTER_LENGTH() renvoie la longueur de la chaîne en caractères.

CHARACTER_LENGTH() est un synonyme de la fonction CHAR_LENGTH().

La syntaxe est la suivante :

CHARACTER_LENGTH(str)
Copier après la connexion

où str est la chaîne renvoyant la longueur.

Exemple 1 - Utilisation de base

Ce qui suit est un exemple d'utilisation de base :

SELECT CHARACTER_LENGTH('Cat');
Copier après la connexion

Le résultat est comme ceci :

+-------------------------+
| CHARACTER_LENGTH('Cat') |
+-------------------------+
|                       3 |
+-------------------------+
Copier après la connexion

Exemple 2 - Espaces à la fin

Notez que CHARACTER_LENGTH() inclut des espaces de fin (tels que des espaces à la fin d'une chaîne) dans ses calculs.

Donc si on ajoute un espace à la fin de l'exemple précédent :

SELECT CHARACTER_LENGTH('Cat ');
Copier après la connexion

le résultat :

+--------------------------+
| CHARACTER_LENGTH('Cat ') |
+--------------------------+
|                        4 |
+--------------------------+
Copier après la connexion

Mais on peut utiliser la fonction TRIM() ou RTRIM ( ) fonction pour supprimer les espaces suivants :

SELECT 
  CHARACTER_LENGTH(TRIM('Cat ')) AS 'TRIM',
  CHARACTER_LENGTH(RTRIM('Cat ')) AS 'RTRIM';
Copier après la connexion

Résultat :

+------+-------+
| TRIM | RTRIM |
+------+-------+
|    3 |     3 |
+------+-------+
Copier après la connexion

Exemple 3 - Il y a des espaces devant

Le même concept s'applique également. S'applique aux espaces précédents. Vous pouvez utiliser TRIM ou LTRIM :

SELECT 
  CHARACTER_LENGTH(TRIM(' Cat')) AS 'TRIM',
  CHARACTER_LENGTH(LTRIM(' Cat')) AS 'LTRIM';
Copier après la connexion

Résultat :

+------+-------+
| TRIM | LTRIM |
+------+-------+
|    3 |     3 |
+------+-------+
Copier après la connexion

Exemple 4 - Type de données

quelle que soit la chaîne Quel que soit le type de données stocké, le résultat sera le même. Cela contraste avec la fonction LENGTH(), qui renverra le double du nombre de caractères si les données sont stockées sous forme de chaîne Unicode.

Dans l'exemple ci-dessous, la colonne ArtistName utilise varchar(255) :

SELECT CHARACTER_LENGTH(ArtistName) Result
FROM Artists
WHERE ArtistName = 'Lit';
Copier après la connexion

Le résultat :

+--------+
| Result |
+--------+
|      3 |
+--------+
Copier après la connexion
Copier après la connexion

Si on modifie la colonne ArtistName pour utiliser Unicode :

ALTER TABLE Artists 
MODIFY COLUMN ArtistName VARCHAR(255) unicode;
Copier après la connexion

et exécuter à nouveau la même requête :

SELECT CHARACTER_LENGTH(ArtistName) 
FROM Artists
WHERE ArtistName = 'Lit';
Copier après la connexion

nous obtenons toujours le même résultat :

+--------+
| Result |
+--------+
|      3 |
+--------+
Copier après la connexion
Copier après la connexion

Cependant, si vous utilisez LENGTH (), le résultat sera 6. En effet, les chaînes Unicode stockent 2 octets par caractère et la fonction LENGTH() renvoie la longueur mesurée en octets.

Recommandations associées : "Tutoriel mysql"

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:
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