CHAR_LENGTH |
Longueur de caractères |
| BigQuery |
Syntaxe
Paramètres
| Nom |
Description |
| value |
Ce paramètre permet de spécifier la chaîne de caractères (STRING) dont vous souhaitez obtenir la longueur en caractères. |
Description
Cette fonction permet de demander la longueur, en caractères, de la chaîne de caractères spécifié.
Remarques
- Fonction de base pour mesurer la taille d'un texte : CHAR_LENGTH retourne le nombre de caractères visibles dans une chaîne de type STRING. Elle
est idéale pour déterminer la taille réelle du texte perçu par l'utilisateur, indépendamment du nombre d'octets utilisés pour l'entreposer.
- Compatible avec les caractères Unicode : Cette fonction prend en charge les caractères Unicode, ce qui signifie qu'elle comptera correctement des
lettres accentuées, des idéogrammes asiatiques, ou encore des emojis comme un seul caractère, même s'ils occupent plusieurs octets en mémoire.
- Fonction équivalente à CHARACTER_LENGTH : CHAR_LENGTH est un alias abrégé de CHARACTER_LENGTH. Les deux fonctions renvoient exactement le même
résultat. Le choix entre les deux dépend souvent des préférences en matière de lisibilité ou de conformité aux standards
SQL.
- Particulièrement utile pour les validations de saisie : Elle est fréquemment utilisée dans des règles de validation de données textuelles, par exemple
pour s'assurer qu'un mot de passe fait au moins 8 caractères ou qu'un champ ne dépasse pas une certaine longueur avant insertion en base.
- Renvoie zéro pour une chaîne vide : Si la chaîne passée en paramètre est vide (''), CHAR_LENGTH retourne simplement 0. Cela permet de détecter
efficacement les chaînes sans contenu, et de les filtrer ou de les traiter différemment dans une requête.
- Différente de BYTE_LENGTH pour les caractères multioctets : Il est important de noter que CHAR_LENGTH et BYTE_LENGTH peuvent retourner des valeurs
différentes. Par exemple, un caractère accentué comme é comptera pour 1 avec CHAR_LENGTH, mais 2 ou 3 avec BYTE_LENGTH selon l'encodage utilisé.
- Ne fonctionne que sur des chaînes de type STRING : CHAR_LENGTH ne peut être utilisée que sur des champs textuels. Si elle est appliquée à d'autres
types comme INT64 ou DATE, il faut d'abord convertir ces valeurs en texte avec CAST(... AS STRING) pour éviter des erreurs.
- Souvent utilisée avec des fonctions de découpage ou de formatage : Combinée avec LEFT, RIGHT ou SUBSTR, CHAR_LENGTH permet de manipuler dynamiquement des
sous-chaînes en fonction de leur taille. Cela est utile pour tronquer des textes trop longs, ou pour ajuster l'affichage dans des tableaux de bord.
Dernière mise à jour : Jeudi, le 18 Juin 2020