La documentation ci-dessous est générée à partir de la table système
system.functions.CRC32
Introduit dans : v20.1.0 Calcule la somme de contrôle CRC32 d’une chaîne de caractères à l’aide du polynôme CRC-32-IEEE 802.3 et de la valeur initiale0xffffffff (implémentation zlib).
Syntaxe
s— ChaîneStringpour laquelle calculer le CRC32.String
UInt32
Exemples
Exemple d’utilisation
Query
Response
CRC32IEEE
Introduit dans : v20.1.0 Calcule la somme de contrôle CRC32 d’une chaîne de caractères à l’aide du polynôme CRC-32-IEEE 802.3. Syntaxes— Chaîne dont il faut calculer le CRC32.String
UInt32
Exemples
Exemple d’utilisation
Query
Response
CRC64
Introduit dans : v20.1.0 Calcule la somme de contrôle CRC64 d’une chaîne de caractères à l’aide du polynôme CRC-64-ECMA. Syntaxes— Chaîne pour laquelle calculer la somme de contrôle CRC64.String
UInt64
Exemples
Exemple d’utilisation
Query
Response
appendTrailingCharIfAbsent
Introduit dans : v1.1.0 Ajoute le caractèrec à la chaîne s si s n’est pas vide et ne se termine pas par le caractère c.
Syntaxe
s avec le caractère c ajouté si s ne se termine pas par c. String
Exemples
Exemple d’utilisation
Query
Response
ascii
Introduit dans : v22.11.0 Renvoie le code ASCII du premier caractère de la chaînes, sous la forme d’un Int32.
Syntaxe
s— Entrée de type String.String
s est vide, le résultat est 0. Si le premier caractère n’est pas un caractère ASCII ou n’appartient pas à la plage Latin-1 Supplement de l’UTF-16, le résultat n’est pas défini. Int32
Exemples
Exemple d’utilisation
Query
Response
base32Decode
Introduit dans : v25.6.0 Décode une chaîne Base32 (RFC 4648). Si la chaîne n’est pas encodée en Base32 correctement, une exception est levée. Syntaxeencoded— Colonne de type String ou constante.String
String
Exemples
Exemple d’utilisation
Query
Response
base32Encode
Introduit dans : v25.6.0 Encode une chaîne à l’aide de Base32. Syntaxeplaintext— Texte en clair à encoder.String
String ou FixedString
Exemples
Exemple d’utilisation
Query
Response
base58Decode
Introduit dans : v22.7.0 Décode une chaîne Base58. Si la chaîne n’est pas encodée en Base58 de manière valide, une exception est levée. Un second argument facultatif,expected_size, peut être fourni pour imposer une taille décodée : une entrée qui
ne se décode pas en exactement ce nombre d’octets est rejetée, et la fonction lève une exception (ou
renvoie une chaîne vide pour tryBase58Decode). Cette exigence s’applique à toutes les tailles, et 0 signifie
aucune exigence.
Syntaxe
encoded— Colonne ou constante de type String à décoder.Stringexpected_size— Facultatif. Taille décodée requise en octets : toute entrée dont le décodage produit une autre taille est rejetée.0n’impose aucune exigence.UInt8, UInt16, UInt32, or UInt64
String
Exemples
Exemple d’utilisation
Query
Response
base58Encode
Introduite dans : v22.7.0 Encode une chaîne en Base58. Syntaxeplaintext— Texte en clair à encoder.String
String
Exemples
Exemple d’utilisation
Query
Response
base64Decode
Introduit dans : v18.16.0 Décode une chaîne à partir d’une représentation Base64, conformément à la RFC 4648. Depuis la version 26.7, les caractères d’espacement suivants dans l’entrée sont ignorés : espace, tabulation (\t), saut de ligne (\n), retour chariot (\r) et saut de page (\f) (les versions antérieures rejetaient les entrées qui en contenaient). La tabulation verticale (\v), ainsi que tous les autres caractères ne faisant pas partie de l’alphabet Base64, sont rejetés.
Lève une exception en cas d’erreur.
Syntaxe
FROM_BASE64
Arguments
encoded— colonne ou constante de type String à décoder. Si la chaîne n’est pas encodée en Base64 de manière valide, une exception est levée.String
String
Exemples
Exemple d’utilisation
Query
Response
base64Encode
Introduit dans : v18.16.0 Encode une chaîne à l’aide de la représentation Base64, conformément à la RFC 4648. SyntaxeTO_BASE64
Arguments
plaintext— Colonne ou constante de texte en clair à décoder.String
String
Exemples
Exemple d’utilisation
Query
Response
base64URLDecode
Introduit dans : v24.6.0 Décode une chaîne à partir d’une représentation Base64 en utilisant un alphabet compatible avec les URL, conformément à la RFC 4648. L’alphabet standard (+ et /) est également accepté lors du décodage.
Depuis la version 26.7, les caractères d’espacement espace, tabulation (\t), saut de ligne (\n), retour chariot (\r) et saut de page (\f) présents dans l’entrée sont ignorés (les versions antérieures rejetaient les entrées qui les contenaient). La tabulation verticale (\v) ainsi que tous les autres caractères ne faisant pas partie de l’alphabet Base64 sont rejetés.
Lève une exception en cas d’erreur.
Syntaxe
encoded— Colonne String ou constante à encoder. Si la chaîne n’est pas une chaîne Base64 valide, une exception est levée.String
String
Exemples
Exemple d’utilisation
Query
Response
base64URLEncode
Introduit dans : v18.16.0 Encode une chaîne à l’aide de la représentation Base64 (RFC 4648) en utilisant un alphabet compatible avec les URL. Syntaxeplaintext— Colonne ou constante de texte en clair à encoder.String
String
Exemples
Exemple d’utilisation
Query
Response
basename
Introduit dans : v20.1.0 Extrait la partie finale d’une chaîne après sa dernière barre oblique (« / ») ou barre oblique inversée (« \ »). Cette fonction est souvent utilisée pour extraire le nom de fichier d’un chemin. Syntaxeexpr— Une expression de chaîne de caractères. Les antislashs doivent être échappés.String
String
Exemples
Extraire le nom du fichier à partir d’un chemin Unix
Query
Response
Query
Response
Query
Response
byteHammingDistance
Introduit dans : v23.9.0 Calcule la distance de Hamming entre deux chaînes d’octets. Syntaxemismatches
Arguments
Valeur renvoyée
Renvoie la distance de Hamming entre les deux chaînes. UInt64
Exemples
Exemple d’utilisation
Query
Response
caseFoldUTF8
Introduit dans : v26.3.0 Applique le repliement de casse Unicode à une chaîne UTF-8, en la convertissant en une forme normalisée proche des minuscules, adaptée aux comparaisons insensibles à la casse. Applique le repliement de casse Unicode standard. Préserve les caractères de compatibilité qui ne sont pas affectés par le repliement de casse (par ex. les chiffres romains, les chiffres encerclés), mais notez que certaines ligatures commeffi sont tout de même décomposées, car le repliement de casse Unicode lui-même les étend.
Syntaxe
str— chaîne d’entrée encodée en UTF-8.String
String
Exemples
Normalisation de la casse de base
Query
Response
compareSubstrings
Introduit dans : v25.2.0 Compare deux chaînes de caractères dans l’ordre lexicographique. Syntaxes1— La première chaîne à comparer.Strings2— La deuxième chaîne à comparer.Strings1_offset— La position (à partir de zéro) danss1à partir de laquelle la comparaison commence.UInt*s2_offset— La position (indice commençant à zéro) danss2à partir de laquelle la comparaison commence.UInt*num_bytes— Le nombre maximal d’octets à comparer dans les deux chaînes. Sis1_offset(ous2_offset) +num_bytesdépasse la fin d’une chaîne d’entrée,num_bytesest réduit en conséquence.UInt*
-1sis1[s1_offset:s1_offset+num_bytes] <s2[s2_offset:s2_offset+num_bytes].0sis1[s1_offset:s1_offset+num_bytes] =s2[s2_offset:s2_offset+num_bytes].1sis1[s1_offset:s1_offset+num_bytes] >s2[s2_offset:s2_offset+num_bytes].Int8
Query
Response
concat
Introduit dans : v1.1.0 Concatène les arguments fournis. Les arguments qui ne sont pas de typeString ou FixedString sont convertis en chaînes de caractères à l’aide de leur sérialisation par défaut.
Comme cela dégrade les performances, il n’est pas recommandé d’utiliser des arguments autres que String/FixedString.
Syntaxe
s1, s2, ...— N’importe quel nombre de valeurs de n’importe quel type.Any
NULL, la fonction renvoie NULL. S’il n’y a aucun argument, elle renvoie une chaîne vide. Nullable(String)
Exemples
Concaténation de chaînes
Query
Response
Query
Response
concatAssumeInjective
Introduit dans : v1.1.0 Commeconcat, mais en supposant que concat(s1, s2, ...) → sn est injective,
c’est-à-dire qu’elle renvoie des résultats différents pour des arguments différents.
Peut être utilisée pour optimiser GROUP BY.
Syntaxe
s1, s2, ...— Un nombre quelconque de valeurs de type arbitraire.StringouFixedString
NULL, la fonction renvoie NULL. Si aucun argument n’est transmis, elle renvoie une chaîne vide. String
Exemples
Optimisation du GROUP BY
Query
Response
concatWithSeparator
Introduit dans : v22.12.0 Concatène les chaînes fournies en les séparant à l’aide du séparateur spécifié. Syntaxeconcat_ws
Arguments
sep— Le séparateur à utiliser.const Stringouconst FixedStringexp1, exp2, ...— Expressions à concaténer. Les arguments dont le type n’est niStringniFixedStringsont convertis en chaînes à l’aide de leur sérialisation par défaut. Comme cela réduit les performances, il n’est pas recommandé d’utiliser des arguments autres queString/FixedString.Any
NULL, la fonction renvoie NULL. String
Exemples
Exemple d’utilisation
Query
Response
concatWithSeparatorAssumeInjective
Introduit dans : v22.12.0 Semblable àconcatWithSeparator, mais suppose que concatWithSeparator(sep[,exp1, exp2, ... ]) → result est injective.
Une fonction est dite injective si elle renvoie des résultats différents pour des arguments distincts.
Peut être utilisée pour optimiser GROUP BY.
Syntaxe
sep— Le séparateur à utiliser.const Stringouconst FixedStringexp1, exp2, ...— Expression à concaténer. Les arguments qui ne sont pas de typeStringouFixedStringsont convertis en chaînes à l’aide de leur sérialisation par défaut. Cela dégradant les performances, il est déconseillé d’utiliser des arguments autres queString/FixedString.StringouFixedString
String obtenue en concaténant les arguments. Si l’une des valeurs d’argument est NULL, la fonction renvoie NULL. String
Exemples
Exemple d’utilisation
Query
Response
conv
Introduit dans : v25.10.0 Convertit des nombres d’une base à une autre. La fonction convertit un nombre d’une base à une autre. Elle prend en charge les bases de 2 à 36. Pour les bases supérieures à 10, les lettres A-Z (sans distinction de casse) sont utilisées pour représenter les chiffres de 10 à 35. Cette fonction est compatible avec la fonction CONV() de MySQL. Syntaxenumber— Le nombre à convertir. Peut être une chaîne de caractères ou un type numérique. -from_base— La base d’origine (2-36). Doit être un entier. -to_base— La base cible (2-36). Doit être un entier.
Query
Response
Query
Response
Query
Response
Query
Response
convertCharset
Introduit dans : v1.1.0 Renvoie la chaînes convertie de l’encodage from vers l’encodage to.
Syntaxe
s— Chaîne d’entrée.Stringfrom— Encodage des caractères source.Stringto— Encodage des caractères cible.String
s convertie de l’encodage from vers l’encodage to. String
Exemples
Exemple d’utilisation
Query
Response
damerauLevenshteinDistance
Introduit dans : v24.1.0 Calcule la distance de Damerau-Levenshtein entre deux chaînes d’octets. SyntaxeUInt64
Exemples
Exemple d’utilisation
Query
Response
decodeHTMLComponent
Introduit dans : v23.9.0 Décode les entités HTML d’une chaîne en caractères correspondants. Syntaxes— Chaîne contenant les entités HTML à décoder.String
String
Exemples
Exemple d’utilisation
Query
Response
decodeXMLComponent
Introduit dans : v21.2.0 Décode les entités XML d’une chaîne en caractères correspondants. Syntaxes— Chaîne contenant les entités XML à décoder.String
String
Exemples
Exemple d’utilisation
Query
Response
editDistance
Introduit dans : v23.9.0 Calcule la distance d’édition entre deux chaînes d’octets. SyntaxelevenshteinDistance
Arguments
Valeur renvoyée
Renvoie la distance d’édition entre les deux chaînes. UInt64
Exemples
Exemple d’utilisation
Query
Response
editDistanceUTF8
Disponible depuis : v24.6.0 Calcule la distance d’édition entre deux chaînes UTF8. SyntaxelevenshteinDistanceUTF8
Arguments
Valeur renvoyée
Renvoie la distance d’édition entre les deux chaînes UTF8. UInt64
Exemples
Exemple d’utilisation
Query
Response
encodeXMLComponent
Introduit dans : v21.1.0 Échappe les caractères afin d’insérer une chaîne dans un nœud de texte XML ou un attribut. Syntaxes— Chaîne à échapper.String
String
Exemples
Exemple d’utilisation
Query
Response
endsWith
Introduit dans : v1.1.0 Indique si une chaîne se termine par le suffixe fourni. Syntaxe1 si s se termine par suffix, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
endsWithCaseInsensitive
Introduit dans : v25.10.0 Vérifie si une chaîne se termine par le suffixe fourni, indépendamment de la casse. Syntaxe1 si s se termine par le suffix sans tenir compte de la casse, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
endsWithCaseInsensitiveUTF8
Introduit dans : v25.10.0 Renvoie si la chaînes se termine par le suffix sans tenir compte de la casse.
Suppose que la chaîne contient du texte valide encodé en UTF-8.
Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini.
Syntaxe
1 si s se termine par le suffix sans tenir compte de la casse, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
endsWithUTF8
Introduit dans : v23.8.0 Renvoie si la chaînes se termine par suffix.
Suppose que la chaîne contient du texte valide encodé en UTF-8.
Si cette hypothèse est violée, aucune exception n’est levée et le résultat est indéfini.
Syntaxe
1 si s se termine par suffix, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
extractTextFromHTML
Introduit dans : v21.3.0 Extrait le contenu texte de documents HTML ou XHTML. Cette fonction supprime les balises HTML, les commentaires ainsi que les éléments script/style, pour ne conserver que le contenu texte. Elle prend en charge :- La suppression de toutes les balises HTML/XML
- La suppression des commentaires (
{/* */}) - La suppression des éléments script et style avec leur contenu
- Le traitement des sections CDATA (copiées telles quelles)
- La gestion correcte des espaces et leur normalisation
html— Chaîne contenant le code HTML à partir duquel extraire le texte.String
String
Exemples
Exemple d’utilisation
Query
Response
firstLine
Introduit dans : v23.7.0 Renvoie la première ligne d’une chaîne multiligne. Syntaxes— Chaîne d’entrée.String
String
Exemples
Exemple d’utilisation
Query
Response
idnaDecode
Introduit dans : v24.1.0 Renvoyer la représentation Unicode (UTF-8) (algorithme ToUnicode) d’un nom de domaine selon le mécanisme Internationalized Domain Names in Applications (IDNA). En cas d’erreur (par exemple si l’entrée n’est pas valide), la chaîne d’entrée est renvoyée. Notez que l’application répétée deidnaEncode() et idnaDecode() ne renvoie pas nécessairement la chaîne d’origine en raison de la normalisation de la casse.
Syntaxe
s— Chaîne d’entrée.String
String
Exemples
Exemple d’utilisation
Query
Response
idnaEncode
Introduit dans : v24.1.0 Renvoie la représentation ASCII (algorithme ToASCII) d’un nom de domaine conformément au mécanisme Internationalized Domain Names in Applications (IDNA). La chaîne d’entrée doit être encodée en UTF et pouvoir être convertie en chaîne ASCII, sinon une exception est levée.Aucun décodage des pourcentages ni aucune suppression des tabulations, espaces ou caractères de contrôle n’est effectué.
s— Chaîne d’entrée.String
String
Exemples
Exemple d’utilisation
Query
Response
initcap
Introduit dans : v23.7.0 Convertit la première lettre de chaque mot en majuscule et les autres en minuscules. Les mots sont des séquences de caractères alphanumériques séparées par des caractères non alphanumériques.Comme
initcap convertit uniquement la première lettre de chaque mot en majuscule, vous pouvez constater un comportement inattendu avec les mots contenant des apostrophes ou des lettres majuscules.
Il s’agit d’un comportement connu, et il n’est actuellement pas prévu de le corriger.s— Chaîne d’entrée.String
s avec la première lettre de chaque mot mise en majuscule. String
Exemples
Exemple d’utilisation
Query
Response
Query
Response
initcapUTF8
Introduit dans : v23.7.0 Commeinitcap, initcapUTF8 convertit la première lettre de chaque mot en majuscule et le reste en minuscules.
Suppose que la chaîne contient un texte valide encodé en UTF-8.
Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini.
Cette fonction ne détecte pas la langue ; par exemple, pour le turc, le résultat peut ne pas être tout à fait correct (i/İ vs. i/I).
Si la longueur de la séquence d’octets UTF-8 diffère entre les formes en majuscules et en minuscules d’un point de code, le résultat peut être incorrect pour ce point de code.
s— Chaîne d’entrée.String
s avec la première lettre de chaque mot en majuscule. String
Exemples
Exemple d’utilisation
Query
Response
isValidASCII
Introduit dans : v25.9.0 Renvoie 1 si la String d’entrée ou la FixedString ne contient que des octets ASCII (0x00–0x7F), sinon 0. Optimisé pour le cas positif (la valeur d’entrée est un ASCII valide). SyntaxeisASCII
Arguments
- Aucun.
Query
Response
isValidUTF8
Introduit dans : v20.1.0 Vérifie si la séquence d’octets constitue un texte valide encodé en UTF-8. Syntaxes— La chaîne dont il faut vérifier la validité de l’encodage UTF-8.String
1 si la suite d’octets constitue un texte valide encodé en UTF-8, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
jaroSimilarity
Introduit dans : v24.1.0 Calcule la similarité de Jaro entre deux chaînes d’octets. SyntaxeFloat64
Exemples
Exemple d’utilisation
Query
Response
jaroWinklerSimilarity
Introduit dans : v24.1.0 Calcule la similarité de Jaro-Winkler entre deux chaînes d’octets. SyntaxeFloat64
Exemples
Exemple d’utilisation
Query
Response
left
Introduite dans : v22.1.0 Renvoie une sous-chaîne de la chaînes avec un offset spécifié, à partir de la gauche.
Syntaxe
s— La chaîne dont extraire une sous-chaîne.StringouFixedStringoffset— Le nombre d’octets du décalage.(U)Int*
- Pour un
offsetpositif, une sous-chaîne desdeoffsetoctets, à partir du début de la chaîne. - Pour un
offsetnégatif, une sous-chaîne desdelength(s) - |offset|octets, à partir du début de la chaîne. - Une chaîne vide si
lengthvaut0.String
Query
Response
Query
Response
leftPad
Introduit dans : v21.8.0 Complète une chaîne à gauche avec des espaces ou avec une chaîne spécifiée (répétée plusieurs fois si nécessaire) jusqu’à ce que la chaîne obtenue atteigne lalength spécifiée.
Syntaxe
lpad
Arguments
string— Chaîne d’entrée à compléter.Stringlength— Longueur de la chaîne résultante. Si la valeur est inférieure à la longueur de la chaîne d’entrée, celle-ci est alors tronquée àlengthcaractères.(U)Int*pad_string— Facultatif. Chaîne utilisée pour compléter la chaîne d’entrée. Si elle n’est pas spécifiée, la chaîne d’entrée est complétée avec des espaces.String
String
Exemples
Exemple d’utilisation
Query
Response
leftPadUTF8
Introduit dans : v21.8.0 Ajoute à gauche d’une chaîne UTF8 des espaces ou une chaîne spécifiée (répétée si nécessaire) jusqu’à ce que la chaîne obtenue atteigne la longueur indiquée. Contrairement àleftPad, qui mesure la longueur de la chaîne en octets, ici, la longueur de la chaîne est mesurée en points de code.
Syntaxe
string— Chaîne d’entrée à remplir.Stringlength— Longueur de la chaîne obtenue. Si la valeur est inférieure à la longueur de la chaîne d’entrée, celle-ci est tronquée àlengthcaractères.(U)Int*pad_string— Facultatif. Chaîne utilisée pour remplir la chaîne d’entrée. Si elle n’est pas spécifiée, la chaîne d’entrée est complétée avec des espaces.String
String
Exemples
Exemple d’utilisation
Query
Response
leftUTF8
Introduit dans : v22.1.0 Renvoie une sous-chaîne de la chaînes, encodée en UTF-8, avec un offset spécifié à partir de la gauche.
Syntaxe
s— La chaîne encodée en UTF-8 dont extraire une sous-chaîne.StringouFixedStringoffset— Le décalage, en nombre d’octets.(U)Int*
- Pour un
offsetpositif, une sous-chaîne desdeoffsetoctets, en partant de la gauche de la chaîne.\n” - Pour un
offsetnégatif, une sous-chaîne desdelength(s) - |offset|octets, en partant de la gauche de la chaîne.\n” - Une chaîne vide si
lengthvaut 0.String
Query
Response
Query
Response
lengthUTF8
Introduit dans : v1.1.0 Renvoie la longueur d’une chaîne en points de code Unicode plutôt qu’en octets ou en caractères. Pour calculer la longueur d’une chaîne en octets, utilisez la fonctionlength.
Cette fonction suppose que la chaîne contient un texte valide encodé en UTF-8.
Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat n’est pas indéfini.
Syntaxe
CHARACTER_LENGTH, CHAR_LENGTH
Arguments
s— String contenant du texte valide encodé en UTF-8.String
s en points de code Unicode. UInt64
Exemples
Exemple d’utilisation
Query
Response
lower
Introduit dans : v1.1.0 Convertit une chaîne ASCII en minuscules. Syntaxelcase
Arguments
s— Une chaîne à convertir en minuscules.String
s en minuscules. String
Exemples
Exemple d’utilisation
Query
Response
lowerUTF8
Introduit dans : v1.1.0 Convertit une chaîne en minuscules, en supposant qu’elle contient du texte valide encodé en UTF-8. Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini. Syntaxeinput— Chaîne d’entrée à convertir en minuscules.String
String
Exemples
premier
Query
Response
naturalSortKey
Introduit dans : v26.3.0 Cette fonction permet d’effectuer un tri naturel. SyntaxeNATURAL_SORT_KEY
Arguments
s— Une chaîne à convertir en clé de tri naturel.String
s. String
Exemples
Exemple d’utilisation
Query
Response
normalizeUTF8NFC
Introduit dans : v21.11.0 Normalise une chaîne UTF-8 selon la forme de normalisation NFC. Syntaxestr— Chaîne d’entrée encodée en UTF-8.String
String
Exemples
Exemple d’utilisation
Query
Response
normalizeUTF8NFD
Introduit dans : v21.11.0 Normalise une chaîne UTF-8 conformément à la forme de normalisation NFD. Syntaxestr— chaîne d’entrée encodée en UTF-8.String
String
Exemples
Exemple d’utilisation
Query
Response
normalizeUTF8NFKC
Introduit dans : v21.11.0 Normalise une chaîne UTF-8 selon la forme de normalisation NFKC. Syntaxestr— Chaîne d’entrée encodée en UTF-8.String
String
Exemples
Exemple d’utilisation
Query
Response
normalizeUTF8NFKCCasefold
Introduite dans : v26.3.0 Normalise une chaîne UTF-8 selon la forme de normalisation NFKC_Casefold, qui applique la normalisation NFKC puis le pliage de casse. Ceci est utile pour la correspondance insensible à la casse des identifiants. Syntaxestr— chaîne d’entrée encodée en UTF-8.String
String
Exemples
Exemple d’utilisation
Query
Response
normalizeUTF8NFKD
Introduit dans : v21.11.0 Normalise une chaîne UTF-8 conformément à la forme de normalisation NFKD. Syntaxestr— chaîne d’entrée encodée en UTF-8.String
String
Exemples
Exemple d’utilisation
Query
Response
punycodeDecode
Introduite dans : v24.1.0 Renvoie le texte en clair encodé en UTF8 d’une chaîne encodée en Punycode. Si la chaîne fournie n’est pas une chaîne encodée en Punycode valide, une exception est levée. Syntaxes— Chaîne encodée en Punycode.String
String
Exemples
Exemple d’utilisation
Query
Response
punycodeEncode
Introduit dans : v24.1.0 Renvoie la représentation en Punycode d’une chaîne. La chaîne doit être encodée en UTF8, sinon le comportement est indéfini. Syntaxes— Valeur d’entrée.String
String
Exemples
Exemple d’utilisation
Query
Response
regexpExtract
Introduit dans : v23.2.0 Extrait la première chaîne dehaystack qui correspond au motif regexp et à l’indice du groupe regex.
Syntaxe
REGEXP_EXTRACT, REGEXP_SUBSTR
Arguments
haystack— String dans laquelle le motif regexp sera recherché.Stringpattern— String, expression régulière.patternpeut contenir plusieurs groupes regexp ;indexindique quel groupe regex extraire. Un index de0signifie que l’expression régulière entière est extraite.const Stringindex— Facultatif. Un entier non négatif indiquant quel groupe regex extraire. La valeur par défaut est1sipatterncontient au moins un groupe de capture, et0(la correspondance complète) sipatternne contient aucun groupe de capture.(U)Int*
String
Exemples
Exemple d’utilisation
Query
Response
regexpPosition
Introduit dans : v26.5.0 Renvoie la position en octets (à partir de 1) de laoccurrence-ième correspondance de pattern dans haystack, en commençant la recherche à la position en octets position.
Si return_option vaut 0 (par défaut), la position du premier octet de la correspondance est renvoyée. Si return_option vaut 1, la position du premier octet après la correspondance est renvoyée.
Si subexpression est supérieur à 0, la position du groupe de capture correspondant est renvoyée à la place de celle de la correspondance entière.
Renvoie 0 si aucune correspondance n’est trouvée, ou si le groupe de capture demandé n’a pas participé à la correspondance.
Cette fonction est fournie pour assurer la compatibilité avec regexp_instr de PostgreSQL (également exposé sous cet alias). Notez que les positions sont exprimées en octets, conformément aux autres fonctions Regex de ClickHouse ; regexp_instr de PostgreSQL est basé sur les caractères.
Syntaxe
regexpInstr, regexp_instr
Arguments
haystack— Chaîne dans laquelle effectuer la recherche.Stringpattern— Motif d’expression régulière.const Stringposition— Facultatif. Position en octets, indexée à partir de 1, à partir de laquelle commencer la recherche. Par défaut : 1.(U)Int*occurrence— Facultatif. Occurrence à renvoyer. Par défaut : 1.(U)Int*return_option— Facultatif. 0 renvoie la position du début de la correspondance, 1 renvoie la position immédiatement après la correspondance. Par défaut : 0.(U)Int*flags— Facultatif. Indicateurs Regex. Pris en charge :i(insensible à la casse),c(sensible à la casse),m/n(ancres multiligne),s(le point correspond à un saut de ligne). Par défaut : vide.const Stringsubexpression— Facultatif. Indice du groupe de capture dont la position doit être renvoyée. 0 signifie la correspondance entière. Par défaut : 0.(U)Int*
UInt64
Exemples
Utilisation de base
Query
Response
removeDiacriticsUTF8
Introduit dans : v26.3.0 Supprime les signes diacritiques (accents) d’une chaîne UTF-8 en décomposant les caractères via NFD, en supprimant les marques combinatoires (catégorie Unicode Mn), puis en les recomposant via NFC. SyntaxeremoveAccentsUTF8
Arguments
str— Chaîne d’entrée encodée en UTF-8.String
String
Exemples
Suppression simple des accents
Query
Response
repeat
Introduit dans : v20.1.0 Concatène une chaîne avec elle-même autant de fois que spécifié. Syntaxes répété n fois. Si n est négatif, la fonction renvoie une chaîne vide. String
Exemples
Exemple d’utilisation
Query
Response
reverseUTF8
Introduit dans : v1.1.0 Inverse une séquence de points de code Unicode dans une chaîne. Suppose que la chaîne contient du texte encodé en UTF-8 valide. Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini. Syntaxes— Chaîne contenant du texte valide encodé en UTF-8.String
String
Exemples
Exemple d’utilisation
Query
Response
right
Introduit dans : v22.1.0 Renvoie une sous-chaîne de la chaînes avec l’offset spécifié, en partant de la droite.
Syntaxe
s— La chaîne dont il faut extraire une sous-chaîne.StringouFixedStringoffset— Le décalage, exprimé en nombre d’octets.(U)Int*
- Pour un
offsetpositif, une sous-chaîne desdeoffsetoctets, en partant de la droite de la chaîne. - Pour un
offsetnégatif, une sous-chaîne desdelength(s) - |offset|octets, en partant de la droite de la chaîne. - Une chaîne vide si
lengthvaut0.String
Query
Response
Query
Response
rightPad
Introduit dans : v21.8.0 Ajoute des espaces ou une chaîne spécifiée à droite d’une chaîne (à plusieurs reprises si nécessaire) jusqu’à ce que la chaîne obtenue atteigne lalength spécifiée.
Syntaxe
rpad
Arguments
string— Chaîne d’entrée à compléter.Stringlength— Longueur de la chaîne obtenue. Si la valeur est inférieure à la longueur de la chaîne d’entrée, celle-ci est tronquée àlengthcaractères.(U)Int*pad_string— Facultatif. Chaîne utilisée pour compléter la chaîne d’entrée. Si elle n’est pas spécifiée, la chaîne d’entrée est complétée avec des espaces.String
String
Exemples
Exemple d’utilisation
Query
Response
rightPadUTF8
Introduit dans : v21.8.0 Ajoute à droite de la chaîne des espaces ou une chaîne spécifiée (répétée plusieurs fois si nécessaire) jusqu’à ce que la chaîne obtenue atteigne la longueur indiquée. Contrairement àrightPad, qui mesure la longueur de la chaîne en octets, ici la longueur de la chaîne est mesurée en points de code.
Syntaxe
string— Chaîne d’entrée à compléter.Stringlength— Longueur de la chaîne résultante. Si cette valeur est inférieure à la longueur de la chaîne d’entrée, celle-ci est tronquée àlengthcaractères.(U)Int*pad_string— Facultatif. Chaîne utilisée pour compléter la chaîne d’entrée. Si elle n’est pas spécifiée, la chaîne d’entrée est complétée avec des espaces.String
String
Exemples
Exemple d’utilisation
Query
Response
rightUTF8
Introduit dans : v22.1.0 Renvoie une sous-chaîne de la chaînes encodée en UTF-8 avec un offset spécifié en partant de la droite.
Syntaxe
s— La chaîne encodée en UTF-8 dont il faut calculer une sous-chaîne.StringouFixedStringoffset— Le décalage, en nombre d’octets.(U)Int*
- Pour un
offsetpositif, une sous-chaîne desdeoffsetoctets, en partant de la droite de la chaîne. - Pour un
offsetnégatif, une sous-chaîne desdelength(s) - |offset|octets, en partant de la droite de la chaîne. - Une chaîne vide si
lengthvaut0.String
Query
Response
Query
Response
soundex
Introduit dans : v23.4.0 Renvoie le code Soundex d’une chaîne de caractères. Syntaxes— Chaîne d’entrée.String
String
Exemples
Exemple d’utilisation
Query
Response
space
Introduite dans : v23.5.0 Concatène un espace ( ) avec lui-même autant de fois que spécifié.
Syntaxe
n— Le nombre de répétitions de l’espace.(U)Int*
n fois. Si n <= 0, la fonction renvoie une chaîne vide. String
Exemples
Exemple d’utilisation
Query
Response
sparseGrams
Introduit dans : v25.5.0 Trouve toutes les sous-chaînes d’une chaîne donnée dont la longueur est d’au moinsn,
où les hachages des (n-1)-grammes aux extrémités de la sous-chaîne
sont strictement supérieurs à ceux de tout (n-1)-gramme situé à l’intérieur de la sous-chaîne.
Utilise CRC32 comme fonction de hachage.
Syntaxe
s— Une chaîne d’entrée.Stringmin_ngram_length— Facultatif. Longueur minimale du n-gramme extrait. La valeur par défaut et la valeur minimale sont de 3.UInt*max_ngram_length— Facultatif. Longueur maximale du n-gramme extrait. La valeur par défaut est de 100. Elle ne doit pas être inférieure àmin_ngram_length.UInt*min_cutoff_length— Facultatif. Si ce paramètre est spécifié, seuls les n-grammes d’une longueur supérieure ou égale àmin_cutoff_lengthsont renvoyés. La valeur par défaut est la même quemin_ngram_length. Elle ne doit pas être inférieure àmin_ngram_lengthni supérieure àmax_ngram_length.UInt*
Array(String)
Exemples
Exemple d’utilisation
Query
Response
sparseGramsHashes
Introduit dans : v25.5.0 Trouve les hachages de toutes les sous-chaînes d’une chaîne donnée d’une longueur d’au moinsn,
pour lesquelles les hachages des (n-1)-grammes situés aux extrémités de la sous-chaîne
sont strictement supérieurs à ceux de tous les (n-1)-grammes qu’elle contient.
Utilise CRC32 comme fonction de hachage.
Syntaxe
s— Une chaîne d’entrée.Stringmin_ngram_length— Facultatif. Longueur minimale du n-gramme extrait. La valeur par défaut, qui est aussi la valeur minimale, est 3.UInt*max_ngram_length— Facultatif. Longueur maximale du n-gramme extrait. La valeur par défaut est 100. Doit être supérieure ou égale àmin_ngram_length.UInt*min_cutoff_length— Facultatif. Si ce paramètre est spécifié, seuls les n-grammes dont la longueur est supérieure ou égale àmin_cutoff_lengthsont renvoyés. La valeur par défaut est la même quemin_ngram_length. Doit être supérieure ou égale àmin_ngram_lengthet inférieure ou égale àmax_ngram_length.UInt*
Array(UInt32)
Exemples
Exemple d’utilisation
Query
Response
sparseGramsHashesUTF8
Introduit dans : v25.5.0 Trouve les hachages de toutes les sous-chaînes d’une chaîne UTF-8 donnée dont la longueur est d’au moinsn, lorsque les hachages des (n-1)-grammes situés aux extrémités de la sous-chaîne sont strictement supérieurs à ceux de tout (n-1)-gramme à l’intérieur de la sous-chaîne.
Attend une chaîne UTF-8 et lève une exception en cas de séquence UTF-8 non valide.
Utilise CRC32 comme fonction de hachage.
Syntaxe
s— Une chaîne d’entrée.Stringmin_ngram_length— Facultatif. Longueur minimale du n-gramme extrait. La valeur par défaut, qui est aussi la valeur minimale, est 3.UInt*max_ngram_length— Facultatif. Longueur maximale du n-gramme extrait. La valeur par défaut est 100. Ne doit pas être inférieure àmin_ngram_length.UInt*min_cutoff_length— Facultatif. Si cette valeur est spécifiée, seuls les n-grammes dont la longueur est supérieure ou égale àmin_cutoff_lengthsont renvoyés. La valeur par défaut est la même quemin_ngram_length. Ne doit pas être inférieure àmin_ngram_lengthni supérieure àmax_ngram_length.UInt*
Array(UInt32)
Exemples
Exemple d’utilisation
Query
Response
sparseGramsUTF8
Introduit dans : v25.5.0 Trouve toutes les sous-chaînes d’une chaîne UTF-8 donnée dont la longueur est d’au moinsn, lorsque les hachages des (n-1)-grammes aux extrémités de la sous-chaîne sont strictement supérieurs à ceux de tout (n-1)-gramme à l’intérieur de la sous-chaîne.
Attend une chaîne UTF-8 et lève une exception en cas de séquence UTF-8 non valide.
Utilise CRC32 comme fonction de hachage.
Syntaxe
s— Une chaîne d’entrée.Stringmin_ngram_length— Facultatif. Longueur minimale du n-gramme extrait. La valeur minimale et la valeur par défaut sont 3.UInt*max_ngram_length— Facultatif. Longueur maximale du n-gramme extrait. La valeur par défaut est 100. Elle ne doit pas être inférieure àmin_ngram_length.UInt*min_cutoff_length— Facultatif. Si cette valeur est spécifiée, seuls les n-grammes dont la longueur est supérieure ou égale àmin_cutoff_lengthsont renvoyés. La valeur par défaut est identique àmin_ngram_length. Elle ne doit pas être inférieure àmin_ngram_lengthni supérieure àmax_ngram_length.UInt*
Array(String)
Exemples
Exemple d’utilisation
Query
Response
startsWith
Introduit dans : v1.1.0 Vérifie si une chaîne commence par la chaîne indiquée. Syntaxe1 si s commence par prefix, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
startsWithCaseInsensitive
Introduit dans : v25.10.0 Vérifie si une chaîne commence par la chaîne fournie, de manière insensible à la casse. Syntaxe1 si s commence par le prefix de manière insensible à la casse, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
startsWithCaseInsensitiveUTF8
Introduit dans : v25.10.0 Vérifie si une chaîne commence par le préfixe fourni, de manière insensible à la casse. Suppose que la chaîne contient du texte valide encodé en UTF-8. Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini. Syntaxe1 si s commence par le prefix, de manière insensible à la casse, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
startsWithUTF8
Introduit dans : v23.8.0 Vérifie si une chaîne commence par le préfixe fourni. Suppose que la chaîne contient du texte valide encodé en UTF-8. Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini. Syntaxe1 si s commence par prefix, sinon 0. UInt8
Exemples
Exemple d’utilisation
Query
Response
stringBytesEntropy
Introduit dans : v25.6.0 Calcule l’entropie de Shannon de la distribution des octets d’une chaîne. Syntaxes— La chaîne à analyser.String
Float64
Exemples
Exemple d’utilisation
Query
Response
stringBytesUniq
Introduit dans : v25.6.0 Compte le nombre d’octets distincts dans une chaîne de caractères. Syntaxes— La chaîne à analyser.String
UInt16
Exemples
Exemple d’utilisation
Query
Response
stringJaccardIndex
Introduit dans : v23.11.0 Calcule l’indice de similarité de Jaccard entre deux chaînes d’octets. SyntaxeFloat64
Exemples
Exemple d’utilisation
Query
Response
stringJaccardIndexUTF8
Introduit dans : v23.11.0 CommestringJaccardIndex, mais pour les chaînes codées en UTF8.
Syntaxe
Float64
Exemples
Exemple d’utilisation
Query
Response
substring
Introduit dans : v1.1.0 Renvoyer la sous-chaîne d’une chaînes à partir de l’index d’octet offset spécifié.
Le comptage des octets commence à 1, selon la logique suivante :
- Si
offsetvaut0, une chaîne vide est renvoyée. - Si
offsetest négatif, la sous-chaîne commence àoffsetcaractères de la fin de la chaîne, et non du début.
length, spécifie le nombre maximal d’octets que la sous-chaîne renvoyée peut contenir.
Voir aussi la fonction digits, qui effectue l’opération analogue sur les chiffres d’un nombre.
Syntaxe
byteSlice, mid, substr
Arguments
s— La chaîne à partir de laquelle extraire une sous-chaîne.StringouFixedStringouEnumoffset— La position de début de la sous-chaîne danss.(U)Int*length— Facultatif. La longueur maximale de la sous-chaîne.(U)Int*
s de length octets, à partir de l’indice offset. String
Exemples
Utilisation de base
Query
Response
substringIndex
Introduit dans : v23.7.0 Renvoie la sous-chaîne des située avant count occurrences du délimiteur delim, comme dans Spark ou MySQL.
Syntaxe
SUBSTRING_INDEX
Arguments
s— La chaîne à partir de laquelle extraire la sous-chaîne.Stringdelim— Le caractère utilisé pour le découpage.Stringcount— Le nombre d’occurrences du délimiteur à compter avant d’extraire la sous-chaîne. Sicountest positif, tout ce qui se trouve à gauche du délimiteur final (en comptant depuis la gauche) est renvoyé. Sicountest négatif, tout ce qui se trouve à droite du délimiteur final (en comptant depuis la droite) est renvoyé.UIntouInt
s avant count occurrences de delim. String
Exemples
Exemple d’utilisation
Query
Response
substringIndexUTF8
Introduit dans : v23.7.0 Renvoie la sous-chaîne des située avant count occurrences du délimiteur delim, en se basant sur les points de code Unicode.
Suppose que la chaîne contient du texte valide codé en UTF-8.
Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini.
Syntaxe
s— La chaîne dont extraire la sous-chaîne.Stringdelim— Le caractère de séparation.Stringcount— Le nombre d’occurrences du délimiteur à compter avant d’extraire la sous-chaîne. Sicountest positif, tout ce qui se trouve à gauche du délimiteur final (en comptant depuis la gauche) est renvoyé. Sicountest négatif, tout ce qui se trouve à droite du délimiteur final (en comptant depuis la droite) est renvoyé.UIntouInt
s située avant count occurrences de delim. String
Exemples
Exemple UTF8
Query
Response
substringUTF8
Introduit dans : v1.1.0 Renvoie la sous-chaîne d’une chaînes qui commence à l’indice de point de code offset spécifié.
Le comptage des points de code commence à 1, selon la logique suivante :
- Si
offsetvaut0, une chaîne vide est renvoyée. - Si
offsetest négatif, la sous-chaîne commence àoffsetpoints de code de la fin de la chaîne, plutôt que du début.
length spécifie le nombre maximal de points de code que la sous-chaîne renvoyée peut contenir.
Cette fonction suppose que la chaîne contient du texte valide encodé en UTF-8.
Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini.
s— La chaîne à partir de laquelle extraire une sous-chaîne.StringouFixedStringouEnumoffset— La position de début de la sous-chaîne danss.IntouUIntlength— La longueur maximale de la sous-chaîne. Facultatif.IntouUInt
s de length points de code, à partir de l’indice de point de code offset. String
Exemples
Exemple d’utilisation
Query
Response
toValidUTF8
Introduite dans : v20.1.0 Convertit une chaîne en UTF-8 valide en remplaçant tout caractère UTF-8 non valide par le caractère de remplacement� (U+FFFD).
Lorsque plusieurs caractères non valides consécutifs sont détectés, ils sont remplacés par un seul caractère de remplacement.
Syntaxe
s— Tout ensemble d’octets représenté par un objet du type de données String.String
String
Exemples
Exemple d’utilisation
Query
Response
trimBoth
Introduit dans : v20.1.0 Supprime les caractères spécifiés au début et à la fin d’une chaîne. Par défaut, supprime les caractères d’espacement (ASCII) les plus courants. Syntaxetrim
Arguments
s— Chaîne à traiter.Stringtrim_characters— Facultatif. Caractères à supprimer. S’ils ne sont pas spécifiés, les caractères d’espacement courants sont supprimés.String
String
Exemples
Exemple d’utilisation
Query
Response
trimLeft
Introduit dans : v20.1.0 Supprime les caractères spécifiés au début d’une chaîne. Par défaut, supprime les caractères d’espacement (ASCII) courants. Syntaxeltrim
Arguments
input— Chaîne à traiter.Stringtrim_characters— Facultatif. Caractères à supprimer. S’ils ne sont pas spécifiés, les caractères d’espacement courants sont supprimés.String
String
Exemples
Exemple d’utilisation
Query
Response
trimRight
Introduit dans : v20.1.0 Supprime les caractères spécifiés à la fin d’une chaîne. Par défaut, supprime les caractères d’espacement (ASCII) courants. Syntaxertrim
Arguments
s— chaîne à traiter.Stringtrim_characters— Caractères optionnels à rogner. S’ils ne sont pas spécifiés, les caractères d’espacement courants sont supprimés.String
String
Exemples
Exemple d’utilisation
Query
Response
tryBase32Decode
Introduit dans : v25.6.0 Accepte une chaîne et la décode selon le schéma d’encodage Base32. Syntaxeencoded— colonne String ou constante à décoder. Si la chaîne n’est pas encodée en Base32 de manière valide, renvoie une chaîne vide en cas d’erreur.String
String
Exemples
Exemple d’utilisation
Query
Response
tryBase58Decode
Introduit dans : v22.10.0 Commebase58Decode, mais renvoie une chaîne vide en cas d’erreur.
Syntaxe
encoded— Colonne ou constante de type String. Si la chaîne n’est pas un encodage Base58 valide, renvoie une chaîne vide en cas d’erreur.Stringexpected_size— Facultatif. Taille décodée obligatoire en octets : une entrée qui se décode vers toute autre taille est rejetée.0n’impose aucune contrainte.UInt8, UInt16, UInt32, or UInt64
String
Exemples
Exemple d’utilisation
Query
Response
tryBase64Decode
Introduit dans : v18.16.0 Commebase64Decode, mais renvoie une chaîne vide en cas d’erreur.
Syntaxe
encoded— colonne String ou constante à décoder. Si la chaîne n’est pas un encodage Base64 valide, renvoie une chaîne vide en cas d’erreur.String
String
Exemples
Exemple d’utilisation
Query
Response
tryBase64URLDecode
Introduit dans : v18.16.0 Commebase64URLDecode, mais renvoie une chaîne vide en cas d’erreur.
Syntaxe
encoded— Colonne ou constante de type String à décoder. Si la chaîne n’est pas correctement encodée en Base64, renvoie une chaîne vide en cas d’erreur.String
String
Exemples
Exemple d’utilisation
Query
Response
tryIdnaEncode
Introduit dans : v24.1.0 Renvoie la représentation Unicode (UTF-8) (algorithme ToUnicode) d’un nom de domaine selon le mécanisme Internationalized Domain Names in Applications (IDNA). En cas d’erreur, renvoie une chaîne vide au lieu de lever une exception. Syntaxes— Chaîne d’entrée.String
String
Exemples
Exemple d’utilisation
Query
Response
tryPunycodeDecode
Introduit dans : v24.1.0 CommepunycodeDecode, mais renvoie une chaîne vide si la chaîne fournie n’est pas une chaîne encodée en Punycode valide.
Syntaxe
s— Chaîne encodée en Punycode.String
String
Exemples
Exemple d’utilisation
Query
Response
upper
Introduit dans : v1.1.0 Convertit les caractères latins ASCII d’une chaîne en majuscules. Syntaxeucase
Arguments
s— La chaîne à convertir en majuscules.String
s convertie en majuscules. String
Exemples
Exemple d’utilisation
Query
Response
upperUTF8
Introduit dans : v1.1.0 Convertit une chaîne en majuscules, en supposant qu’elle contient du texte encodé en UTF-8 valide. Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini.Cette fonction ne détecte pas la langue ; par exemple, pour le turc, le résultat peut ne pas être parfaitement correct (i/İ vs. i/I).
Si la longueur de la séquence d’octets UTF-8 diffère entre la forme majuscule et la forme minuscule d’un point de code (comme
ẞ et ß), le résultat peut être incorrect pour ce point de code.s— Le typeString.String
String. String
Exemples
Exemple d’utilisation
Query
Response