Saltar al contenido principal
Las funciones para buscar en cadenas y para reemplazar en cadenas se describen por separado.
La documentación siguiente se genera a partir de la tabla del sistema system.functions.

CRC32

Introducido en: v20.1.0 Calcula la suma de comprobación CRC32 de una cadena mediante el polinomio CRC-32-IEEE 802.3 y el valor inicial 0xffffffff (implementación de zlib). Sintaxis
CRC32(s)
Argumentos
  • s — Cadena para la que se calcula CRC32. String
Valor devuelto Devuelve la suma de comprobación CRC32 de la cadena. UInt32 Ejemplos Ejemplo de uso
Query
SELECT CRC32('ClickHouse')
Response
┌─CRC32('ClickHouse')─┐
│          1538217360 │
└─────────────────────┘

CRC32IEEE

Introducida en: v20.1.0 Calcula la suma de comprobación CRC32 de una cadena utilizando el polinomio CRC-32-IEEE 802.3. Sintaxis
CRC32IEEE(s)
Argumentos
  • s — Cadena para la que se calcula CRC32. String
Valor devuelto Devuelve la suma de comprobación CRC32 de la cadena. UInt32 Ejemplos Ejemplo de uso
Query
SELECT CRC32IEEE('ClickHouse');
Response
┌─CRC32IEEE('ClickHouse')─┐
│              3089448422 │
└─────────────────────────┘

CRC64

Introducido en: v20.1.0 Calcula la suma de comprobación CRC64 de una cadena utilizando el polinomio CRC-64-ECMA. Sintaxis
CRC64(s)
Argumentos
  • s — Cadena para la que se calcula CRC64. String
Valor devuelto Devuelve la suma de comprobación CRC64 de la cadena. UInt64 Ejemplos Ejemplo de uso
Query
SELECT CRC64('ClickHouse');
Response
┌──CRC64('ClickHouse')─┐
│ 12126588151325169346 │
└──────────────────────┘

appendTrailingCharIfAbsent

Introducido en: v1.1.0 Añade el carácter c a la cadena s si s no está vacía y no termina con el carácter c. Sintaxis
appendTrailingCharIfAbsent(s, c)
Argumentos
  • s — Cadena de entrada. String
  • c — Carácter que se añade si no está presente. String
Valor devuelto Devuelve la cadena s con el carácter c añadido si s no termina en c. String Ejemplos Ejemplo de uso
Query
SELECT appendTrailingCharIfAbsent('https://example.com', '/');
Response
┌─appendTraili⋯.com', '/')─┐
│ https://example.com/     │
└──────────────────────────┘

ascii

Introducido en: v22.11.0 Devuelve el punto de código ASCII del primer carácter de la cadena s como un valor Int32. Sintaxis
ascii(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve el código ASCII del primer carácter. Si s está vacío, el resultado es 0. Si el primer carácter no es un carácter ASCII o no pertenece al rango de suplemento Latin-1 de UTF-16, el resultado no está definido. Int32 Ejemplos Ejemplo de uso
Query
SELECT ascii('234')
Response
┌─ascii('234')─┐
│           50 │
└──────────────┘

base32Decode

Introducido en: v25.6.0 Decodifica una cadena en Base32 (RFC 4648). Si la cadena no es una codificación Base32 válida, se lanza una excepción. Sintaxis
base32Decode(encoded)
Argumentos
  • encoded — columna de tipo String o constante. String
Valor devuelto Devuelve una cadena que contiene el valor decodificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT base32Decode('IVXGG33EMVSA====');
Response
┌─base32Decode('IVXGG33EMVSA====')─┐
│ Encoded                          │
└──────────────────────────────────┘

base32Encode

Introducido en: v25.6.0 Codifica una cadena en Base32. Sintaxis
base32Encode(plaintext)
Argumentos
  • plaintext — texto plano que se va a codificar. String
Valor devuelto Devuelve una cadena que contiene el valor codificado del argumento. String o FixedString Ejemplos Ejemplo de uso
Query
SELECT base32Encode('Encoded')
Response
┌─base32Encode('Encoded')─┐
│ IVXGG33EMVSA====        │
└─────────────────────────┘

base58Decode

Introducido en: v22.7.0 Decodifica una cadena Base58. Si la cadena no es una codificación Base58 válida, se lanza una excepción. Se puede proporcionar un segundo argumento opcional, expected_size, para seleccionar un decodificador optimizado de tamaño fijo. Actualmente, los valores admitidos son 32 y 64. Para otros valores, se utiliza el decodificador genérico. Cuando se selecciona el decodificador optimizado pero la entrada no puede decodificarse en exactamente esa cantidad de bytes, la función lanza una excepción (o devuelve una cadena vacía en tryBase58Decode). Sintaxis
base58Decode(encoded[, expected_size])
Argumentos
  • encoded — Columna String o constante para decodificar. String
  • expected_size — Opcional. Tamaño esperado del valor decodificado en bytes. Cuando es 32 o 64, se usa un decodificador optimizado; para otros valores, se usa el decodificador genérico. UInt8, UInt16, UInt32, or UInt64
Valor devuelto Devuelve una cadena con el valor decodificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT base58Decode('JxF12TrwUP45BMd');
Response
┌─base58Decode⋯rwUP45BMd')─┐
│ Hello World              │
└──────────────────────────┘

base58Encode

Introducido en: v22.7.0 Codifica una cadena en Base58. Sintaxis
base58Encode(plaintext)
Argumentos
  • plaintext — texto plano que se va a codificar. String
Valor devuelto Devuelve una cadena que contiene el valor codificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT base58Encode('ClickHouse');
Response
┌─base58Encode('ClickHouse')─┐
│ 4nhk8K7GHXf6zx             │
└────────────────────────────┘

base64Decode

Introducido en: v18.16.0 Decodifica una cadena a partir de su representación en Base64, de acuerdo con RFC 4648. Lanza una excepción en caso de error. Sintaxis
base64Decode(encoded)
Alias: FROM_BASE64 Argumentos
  • encoded — Columna String o constante que se debe decodificar. Si la cadena no está codificada en Base64 de forma válida, se genera una excepción. String
Valor devuelto Devuelve la cadena decodificada. String Ejemplos Ejemplo de uso
Query
SELECT base64Decode('Y2xpY2tob3VzZQ==')
Response
┌─base64Decode('Y2xpY2tob3VzZQ==')─┐
│ clickhouse                       │
└──────────────────────────────────┘

base64Encode

Introducido en: v18.16.0 Codifica una cadena en formato Base64, según la RFC 4648. Sintaxis
base64Encode(plaintext)
Alias: TO_BASE64 Argumentos
  • plaintext — Columna o constante de texto plano que se va a decodificar. String
Valor devuelto Devuelve una cadena que contiene el valor codificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT base64Encode('clickhouse')
Response
┌─base64Encode('clickhouse')─┐
│ Y2xpY2tob3VzZQ==           │
└────────────────────────────┘

base64URLDecode

Introducido en: v24.6.0 Decodifica una cadena desde su representación en Base64 usando un alfabeto seguro para URL, de acuerdo con la RFC 4648. Lanza una excepción en caso de error. Sintaxis
base64URLDecode(encoded)
Argumentos
  • encoded — Columna String o constante para codificar. Si la cadena no está codificada en Base64 de forma válida, se lanza una excepción. String
Valor devuelto Devuelve una cadena que contiene el valor decodificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT base64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')
Response
┌─base64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')─┐
│ https://clickhouse.com                            │
└───────────────────────────────────────────────────┘

base64URLEncode

Introducido en: v18.16.0 Codifica una cadena utilizando la representación Base64 (RFC 4648) con un alfabeto apto para URL. Sintaxis
base64URLEncode(plaintext)
Argumentos
  • plaintext — Columna o constante de texto plano para codificar. String
Valor devuelto Devuelve una cadena con el valor codificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT base64URLEncode('https://clickhouse.com')
Response
┌─base64URLEncode('https://clickhouse.com')─┐
│ aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ            │
└───────────────────────────────────────────┘

basename

Introducido en: v20.1.0 Extrae la parte final de una cadena tras la última barra o barra invertida. Esta función se utiliza a menudo para extraer el nombre del archivo de una ruta. Sintaxis
basename(expr)
Argumentos
  • expr — Una expresión de tipo cadena. Las barras invertidas deben escaparse. String
Valor devuelto Devuelve la parte final de la cadena de entrada después de la última barra o barra invertida. Si la cadena de entrada termina con una barra o una barra invertida, la función devuelve una cadena vacía. Devuelve la cadena original si no contiene barras ni barras invertidas. String Ejemplos Extraer el nombre de archivo de una ruta de Unix
Query
SELECT 'some/long/path/to/file' AS a, basename(a)
Response
┌─a──────────────────────┬─basename('some/long/path/to/file')─┐
│ some/long/path/to/file │ file                               │
└────────────────────────┴────────────────────────────────────┘
Extraer el nombre de archivo de una ruta de Windows
Query
SELECT 'some\\long\\path\\to\\file' AS a, basename(a)
Response
┌─a──────────────────────┬─basename('some\\long\\path\\to\\file')─┐
│ some\long\path\to\file │ file                                   │
└────────────────────────┴────────────────────────────────────────┘
Cadena sin separadores de ruta
Query
SELECT 'some-file-name' AS a, basename(a)
Response
┌─a──────────────┬─basename('some-file-name')─┐
│ some-file-name │ some-file-name             │
└────────────────┴────────────────────────────┘

byteHammingDistance

Introducido en: v23.9.0 Calcula la distancia de Hamming entre dos cadenas de bytes. Sintaxis
byteHammingDistance(s1, s2)
Alias: mismatches Argumentos
  • s1 — Primera cadena de entrada. String
  • s2 — Segunda cadena de entrada. String
Valor devuelto Devuelve la distancia de Hamming entre ambas cadenas. UInt64 Ejemplos Ejemplo de uso
Query
SELECT byteHammingDistance('karolin', 'kathrin')
Response
┌─byteHammingDistance('karolin', 'kathrin')─┐
│                                         3 │
└───────────────────────────────────────────┘

caseFoldUTF8

Introducido en: v26.3.0 Aplica el case folding de Unicode a una cadena UTF-8, convirtiéndola en una forma normalizada similar a minúsculas adecuada para comparaciones sin distinción entre mayúsculas y minúsculas. Aplica el case folding estándar de Unicode. Conserva los caracteres de compatibilidad que no se ven afectados por el case folding (p. ej., números romanos, números con círculo), pero tenga en cuenta que algunas ligaduras, como , siguen descomponiéndose porque el propio case folding de Unicode las expande. Sintaxis
caseFoldUTF8(str)
Argumentos
  • str — Cadena de entrada codificada en UTF-8. String
Valor devuelto Cadena UTF-8 con normalización de mayúsculas y minúsculas. String Ejemplos Normalización básica de mayúsculas y minúsculas
Query
SELECT caseFoldUTF8('Straße')
Response
┌─caseFoldUTF8('Straße')─┐
│ strasse                 │
└─────────────────────────┘

compareSubstrings

Introducido en: v25.2.0 Compara dos cadenas en orden lexicográfico. Sintaxis
compareSubstrings(s1, s2, s1_offset, s2_offset, num_bytes)
Argumentos
  • s1 — La primera cadena que se comparará. String
  • s2 — La segunda cadena que se comparará. String
  • s1_offset — La posición (indexada desde cero) en s1 a partir de la cual comienza la comparación. UInt*
  • s2_offset — La posición (índice basado en cero) en s2 a partir de la cual comienza la comparación. UInt*
  • num_bytes — El número máximo de bytes que se comparará en ambas cadenas. Si s1_offset (o s2_offset) + num_bytes supera el final de una cadena de entrada, num_bytes se reducirá en consecuencia. UInt*
Valor devuelto Devuelve:
  • -1 si s1[s1_offset : s1_offset + num_bytes] < s2[s2_offset : s2_offset + num_bytes].
  • 0 si s1[s1_offset : s1_offset + num_bytes] = s2[s2_offset : s2_offset + num_bytes].
  • 1 si s1[s1_offset : s1_offset + num_bytes] > s2[s2_offset : s2_offset + num_bytes]. Int8
Ejemplos Ejemplo de uso
Query
SELECT compareSubstrings('Saxony', 'Anglo-Saxon', 0, 6, 5) AS result
Response
┌─result─┐
│      0 │
└────────┘

concat

Introducido en: v1.1.0 Concatena los argumentos especificados. Los argumentos que no son de tipo String o FixedString se convierten en cadenas mediante su serialización predeterminada. Como esto reduce el rendimiento, no se recomienda usar argumentos distintos de String/FixedString. Sintaxis
concat([s1, s2, ...])
Argumentos
  • s1, s2, ... — Cualquier cantidad de valores de cualquier tipo. Any
Valor devuelto Devuelve la cadena creada al concatenar los argumentos. Si alguno de los argumentos es NULL, la función devuelve NULL. Si no hay argumentos, devuelve una cadena vacía. Nullable(String) Ejemplos Concatenación de cadenas
Query
SELECT concat('Hello, ', 'World!')
Response
┌─concat('Hello, ', 'World!')─┐
│ Hello, World!               │
└─────────────────────────────┘
Concatenación de números
Query
SELECT concat(42, 144)
Response
┌─concat(42, 144)─┐
│ 42144           │
└─────────────────┘

concatAssumeInjective

Introducido en: v1.1.0 Como concat, pero asume que concat(s1, s2, ...) → sn es inyectiva, es decir, que devuelve resultados distintos para argumentos distintos. Puede utilizarse para optimizar GROUP BY. Sintaxis
concatAssumeInjective([s1, s2, ...])
Argumentos
  • s1, s2, ... — Cualquier cantidad de valores de tipo arbitrario. String o FixedString
Valor devuelto Devuelve la cadena resultante de concatenar los argumentos. Si alguno de los valores de los argumentos es NULL, la función devuelve NULL. Si no se pasa ningún argumento, devuelve una cadena vacía. String Ejemplos Optimización de GROUP BY
Query
SELECT concat(key1, key2), sum(value) FROM key_val GROUP BY concatAssumeInjective(key1, key2)
Response
┌─concat(key1, key2)─┬─sum(value)─┐
│ Hello, World!      │          3 │
│ Hello, World!      │          2 │
│ Hello, World       │          3 │
└────────────────────┴────────────┘

concatWithSeparator

Introducido en: v22.12.0 Concatena las cadenas proporcionadas, separadas por el separador especificado. Sintaxis
concatWithSeparator(sep[, exp1, exp2, ...])
Aliases: concat_ws Argumentos
  • sep — El separador que se usará. const String o const FixedString
  • exp1, exp2, ... — Expresiones que se concatenarán. Los argumentos que no sean de tipo String o FixedString se convierten en cadenas mediante su serialización predeterminada. Como esto reduce el rendimiento, no se recomienda usar argumentos distintos de String/FixedString. Any
Valor devuelto Devuelve la cadena creada al concatenar los argumentos. Si alguno de los valores de los argumentos es NULL, la función devuelve NULL. String Ejemplos Ejemplo de uso
Query
SELECT concatWithSeparator('a', '1', '2', '3', '4')
Response
┌─concatWithSeparator('a', '1', '2', '3', '4')─┐
│ 1a2a3a4                                      │
└──────────────────────────────────────────────┘

concatWithSeparatorAssumeInjective

Introducido en: v22.12.0 Como concatWithSeparator, pero asume que concatWithSeparator(sep[,exp1, exp2, ... ]) → result es inyectiva. Se considera inyectiva una función si devuelve resultados distintos para argumentos distintos. Puede usarse para optimizar GROUP BY. Sintaxis
concatWithSeparatorAssumeInjective(sep[, exp1, exp2, ... ])
Argumentos
  • sep — El separador que se va a utilizar. const String o const FixedString
  • exp1, exp2, ... — Expresión que se va a concatenar. Los argumentos que no sean de tipo String o FixedString se convierten en cadenas mediante su serialización predeterminada. Como esto reduce el rendimiento, no se recomienda usar argumentos que no sean String/FixedString. String o FixedString
Valor devuelto Devuelve la cadena creada al concatenar los argumentos. Si alguno de los valores de los argumentos es NULL, la función devuelve NULL. String Ejemplos Ejemplo de uso
Query
CREATE TABLE user_data (
user_id UInt32,
first_name String,
last_name String,
score UInt32
)
ENGINE = MergeTree
ORDER BY tuple();

INSERT INTO user_data VALUES
(1, 'John', 'Doe', 100),
(2, 'Jane', 'Smith', 150),
(3, 'John', 'Wilson', 120),
(4, 'Jane', 'Smith', 90);

SELECT
    concatWithSeparatorAssumeInjective('-', first_name, last_name) as full_name,
    sum(score) as total_score
FROM user_data
GROUP BY concatWithSeparatorAssumeInjective('-', first_name, last_name);
Response
┌─full_name───┬─total_score─┐
│ Jane-Smith  │         240 │
│ John-Doe    │         100 │
│ John-Wilson │         120 │
└─────────────┴─────────────┘

conv

Introducido en: v25.10.0 Convierte números entre distintas bases numéricas. La función convierte un número de una base a otra. Admite bases de 2 a 36. Para bases superiores a 10, se usan las letras A-Z (sin distinguir entre mayúsculas y minúsculas) para representar los dígitos del 10 al 35. Esta función es compatible con la función CONV() de MySQL. Sintaxis
conv(number, from_base, to_base)
Argumentos
  • number — El número que se va a convertir. Puede ser una cadena o un tipo numérico. - from_base — La base de origen (2-36). Debe ser un entero. - to_base — La base de destino (2-36). Debe ser un entero.
Valor devuelto Representación textual del número en la base de destino. Ejemplos Convertir de decimal a binario
Query
SELECT conv('10', 10, 2)
Response
1010
Convertir de hexadecimal a decimal
Query
SELECT conv('FF', 16, 10)
Response
255
Conversión con número negativo
Query
SELECT conv('-1', 10, 16)
Response
FFFFFFFFFFFFFFFF
Convertir de binario a octal
Query
SELECT conv('1010', 2, 8)
Response
12

convertCharset

Introducido en: v1.1.0 Devuelve la cadena s convertida desde la codificación from a la codificación to. Sintaxis
convertCharset(s, from, to)
Argumentos
  • s — Cadena de entrada. String
  • from — Codificación de caracteres de origen. String
  • to — Codificación de caracteres de destino. String
Valor devuelto Devuelve la cadena s convertida de la codificación from a to. String Ejemplos Ejemplo de uso
Query
SELECT convertCharset('Café', 'UTF-8', 'ISO-8859-1');
Response
┌─convertChars⋯SO-8859-1')─┐
│ Caf�                     │
└──────────────────────────┘

damerauLevenshteinDistance

Introducido en: v24.1.0 Calcula la distancia de Damerau-Levenshtein entre dos cadenas de bytes. Sintaxis
damerauLevenshteinDistance(s1, s2)
Argumentos
  • s1 — Primera cadena de entrada. String
  • s2 — Segunda cadena de entrada. String
Valor devuelto Devuelve la distancia de Damerau-Levenshtein entre las dos cadenas. UInt64 Ejemplos Ejemplo de uso
Query
SELECT damerauLevenshteinDistance('clickhouse', 'mouse')
Response
┌─damerauLevenshteinDistance('clickhouse', 'mouse')─┐
│                                                 6 │
└───────────────────────────────────────────────────┘

decodeHTMLComponent

Introducido en: v23.9.0 Decodifica las entidades HTML de una cadena y las convierte en sus caracteres correspondientes. Sintaxis
decodeHTMLComponent(s)
Argumentos
  • s — Cadena que contiene entidades HTML que se deben decodificar. String
Valor devuelto Devuelve la cadena con las entidades HTML decodificadas. String Ejemplos Ejemplo de uso
Query
SELECT decodeHTMLComponent('&lt;div&gt;Hello &amp; &quot;World&quot;&lt;/div&gt;')
Response
┌─decodeHTMLComponent('&lt;div&gt;Hello &amp; &quot;World&quot;&lt;/div&gt;')─┐
│ <div>Hello & "World"</div>                                                  │
└─────────────────────────────────────────────────────────────────────────────┘

decodeXMLComponent

Introducido en: v21.2.0 Decodifica las entidades XML de una cadena en sus caracteres correspondientes. Sintaxis
decodeXMLComponent(s)
Argumentos
  • s — Cadena que contiene entidades XML que se deben decodificar. String
Valor devuelto Devuelve la cadena proporcionada con las entidades XML decodificadas. String Ejemplos Ejemplo de uso
Query
SELECT decodeXMLComponent('&lt;tag&gt;Hello &amp; World&lt;/tag&gt;')
Response
┌─decodeXMLCom⋯;/tag&gt;')─┐
│ <tag>Hello & World</tag> │
└──────────────────────────┘

editDistance

Introducido en: v23.9.0 Calcula la distancia de edición entre dos cadena de bytes. Sintaxis
editDistance(s1, s2)
Alias: levenshteinDistance Argumentos
  • s1 — Primera cadena de entrada. String
  • s2 — Segunda cadena de entrada. String
Valor devuelto Devuelve la distancia de edición entre ambas cadenas. UInt64 Ejemplos Ejemplo de uso
Query
SELECT editDistance('clickhouse', 'mouse')
Response
┌─editDistance('clickhouse', 'mouse')─┐
│                                   6 │
└─────────────────────────────────────┘

editDistanceUTF8

Introducido en: v24.6.0 Calcula la distancia de edición entre dos cadenas en UTF-8. Sintaxis
editDistanceUTF8(s1, s2)
Alias: levenshteinDistanceUTF8 Argumentos
  • s1 — Primera cadena de entrada. String
  • s2 — Segunda cadena de entrada. String
Valor devuelto Devuelve la distancia de edición entre las dos cadenas UTF-8. UInt64 Ejemplos Ejemplo de uso
Query
SELECT editDistanceUTF8('我是谁', '我是我')
Response
┌─editDistanceUTF8('我是谁', '我是我')──┐
│                                   1 │
└─────────────────────────────────────┘

encodeXMLComponent

Introducido en: v21.1.0 Escapa caracteres para insertar una cadena en un nodo de texto XML o en un atributo. Sintaxis
encodeXMLComponent(s)
Argumentos
  • s — Cadena que se debe escapar. String
Valor devuelto Devuelve la cadena escapada. String Ejemplos Ejemplo de uso
Query
SELECT
    '<tag>Hello & "World"</tag>' AS original,
    encodeXMLComponent('<tag>Hello & "World"</tag>') AS xml_encoded;
Response
┌─original───────────────────┬─xml_encoded──────────────────────────────────────────┐
│ <tag>Hello & "World"</tag> │ &lt;tag&gt;Hello &amp; &quot;World&quot;&lt;/tag&gt; │
└────────────────────────────┴──────────────────────────────────────────────────────┘

endsWith

Introducido en: v1.1.0 Comprueba si una cadena termina con el sufijo indicado. Sintaxis
endsWith(s, suffix)
Argumentos
  • s — Cadena a comprobar. String
  • suffix — Sufijo a comprobar. String
Valor devuelto Devuelve 1 si s termina con suffix; en caso contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT endsWith('ClickHouse', 'House');
Response
┌─endsWith('Cl⋯', 'House')─┐
│                        1 │
└──────────────────────────┘

endsWithCaseInsensitive

Introducido en: v25.10.0 Verifica si una cadena termina con el sufijo especificado sin distinguir entre mayúsculas y minúsculas. Sintaxis
endsWithCaseInsensitive(s, suffix)
Argumentos
  • s — Cadena que se va a comprobar. String
  • suffix — Sufijo sin distinguir entre mayúsculas y minúsculas que se va a comprobar. String
Valor devuelto Devuelve 1 si s termina con el suffix sin distinguir entre mayúsculas y minúsculas; de lo contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT endsWithCaseInsensitive('ClickHouse', 'HOUSE');
Response
┌─endsWithCaseInsensitive('Cl⋯', 'HOUSE')─┐
│                                       1 │
└─────────────────────────────────────────┘

endsWithCaseInsensitiveUTF8

Introducido en: v25.10.0 Devuelve si la cadena s termina con el suffix sin distinguir entre mayúsculas y minúsculas. Asume que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta condición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
endsWithCaseInsensitiveUTF8(s, suffix)
Argumentos
  • s — String que se debe comprobar. String
  • suffix — Sufijo que se debe comprobar sin distinguir entre mayúsculas y minúsculas. String
Valor devuelto Devuelve 1 si s termina con el suffix sin distinguir entre mayúsculas y minúsculas; de lo contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT endsWithCaseInsensitiveUTF8('данных', 'ых');
Response
┌─endsWithCaseInsensitiveUTF8('данных', 'ых')─┐
│                                           1 │
└─────────────────────────────────────────────┘

endsWithUTF8

Introducido en: v23.8.0 Devuelve si la cadena s termina con suffix. Asume que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
endsWithUTF8(s, suffix)
Argumentos
  • s — String que se va a comprobar. String
  • suffix — Sufijo que se va a comprobar. String
Valor devuelto Devuelve 1 si s termina con suffix; de lo contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT endsWithUTF8('данных', 'ых');
Response
┌─endsWithUTF8('данных', 'ых')─┐
│                            1 │
└──────────────────────────────┘

extractTextFromHTML

Introducido en: v21.3.0 Extrae el contenido de texto de HTML o XHTML. Esta función elimina las etiquetas HTML, los comentarios y los elementos script/style, y deja únicamente el contenido de texto. Gestiona lo siguiente:
  • La eliminación de todas las etiquetas HTML/XML
  • La eliminación de comentarios ({/* */})
  • La eliminación de los elementos script y style junto con su contenido
  • El procesamiento de secciones CDATA (copiadas literalmente)
  • El tratamiento y la normalización correctos de los espacios en blanco
Nota: las entidades HTML no se decodifican y deben procesarse con una función aparte si es necesario. Sintaxis
extractTextFromHTML(html)
Argumentos
  • html — Cadena con contenido HTML del que se extrae el texto. String
Valor devuelto Devuelve el contenido de texto extraído con espacios en blanco normalizados. String Ejemplos Ejemplo de uso
Query
SELECT extractTextFromHTML('
<html>
    <head><title>Page Title</title></head>
    <body>
        <p>Hello <b>World</b>!</p>
        <script>alert("test");</script>
        <!-- comment -->
    </body>
</html>
');
Response
┌─extractTextFromHTML('<html><head>...')─┐
│ Page Title Hello World!                │
└────────────────────────────────────────┘

firstLine

Introducido en: v23.7.0 Devuelve la primera línea de una cadena multilínea. Sintaxis
firstLine(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve la primera línea de la cadena de entrada o la cadena completa si no hay separadores de línea. String Ejemplos Ejemplo de uso
Query
SELECT firstLine('foo\\nbar\\nbaz')
Response
┌─firstLine('foo\nbar\nbaz')─┐
│ foo                        │
└────────────────────────────┘

idnaDecode

Introducido en: v24.1.0 Devuelve la representación Unicode (UTF-8) (algoritmo ToUnicode) de un nombre de dominio según el mecanismo Internationalized Domain Names in Applications (IDNA). En caso de error (por ejemplo, porque la entrada no es válida), se devuelve la cadena de entrada. Tenga en cuenta que el uso repetido de idnaEncode() y idnaDecode() no devuelve necesariamente la cadena original debido a la normalización de mayúsculas y minúsculas. Sintaxis
idnaDecode(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve una representación Unicode (UTF-8) de la cadena de entrada según el mecanismo IDNA correspondiente al valor de entrada. String Ejemplos Ejemplo de uso
Query
SELECT idnaDecode('xn--strae-oqa.xn--mnchen-3ya.de')
Response
┌─idnaDecode('xn--strae-oqa.xn--mnchen-3ya.de')─┐
│ straße.münchen.de                             │
└───────────────────────────────────────────────┘

idnaEncode

Introducido en: v24.1.0 Devuelve la representación ASCII (algoritmo ToASCII) de un nombre de dominio según el mecanismo Internationalized Domain Names in Applications (IDNA). La cadena de entrada debe estar codificada en UTF y poder convertirse en una cadena ASCII; de lo contrario, se lanza una excepción.
No se realiza ninguna decodificación de porcentajes ni se eliminan tabulaciones, espacios o caracteres de control.
Sintaxis
idnaEncode(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve una representación ASCII de la cadena de entrada conforme al mecanismo IDNA. String Ejemplos Ejemplo de uso
Query
SELECT idnaEncode('straße.münchen.de')
Response
┌─idnaEncode('straße.münchen.de')─────┐
│ xn--strae-oqa.xn--mnchen-3ya.de     │
└─────────────────────────────────────┘

initcap

Introducido en: v23.7.0 Convierte la primera letra de cada palabra en mayúscula y el resto en minúsculas. Las palabras son secuencias de caracteres alfanuméricos separadas por caracteres no alfanuméricos.
Como initcap solo convierte a mayúscula la primera letra de cada palabra, es posible que observe un comportamiento inesperado en palabras que contienen apóstrofos o letras mayúsculas. Este es un comportamiento conocido y actualmente no está previsto corregirlo.
Sintaxis
initcap(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve s con la primera letra de cada palabra en mayúscula. String Ejemplos Ejemplo de uso
Query
SELECT initcap('building for fast')
Response
┌─initcap('building for fast')─┐
│ Building For Fast            │
└──────────────────────────────┘
Ejemplo del comportamiento conocido con palabras que contienen apóstrofos o letras mayúsculas
Query
SELECT initcap('John''s cat won''t eat.');
Response
┌─initcap('Joh⋯n\'t eat.')─┐
│ John'S Cat Won'T Eat.    │
└──────────────────────────┘

initcapUTF8

Introducido en: v23.7.0 Al igual que initcap, initcapUTF8 convierte la primera letra de cada palabra en mayúscula y el resto en minúsculas. Se asume que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado no está definido.
Esta función no detecta el idioma; por ejemplo, para el turco, el resultado podría no ser exactamente correcto (i/İ vs. i/I). Si la longitud de la secuencia de bytes UTF-8 difiere entre las formas en mayúsculas y minúsculas de un punto de código, el resultado puede ser incorrecto para ese punto de código.
Sintaxis
initcapUTF8(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve s con la primera letra de cada palabra en mayúscula. String Ejemplos Ejemplo de uso
Query
SELECT initcapUTF8('не тормозит')
Response
┌─initcapUTF8('не тормозит')─┐
│ Не Тормозит                │
└────────────────────────────┘

isValidASCII

Introducido en: v25.9.0 Devuelve 1 si el valor de entrada de tipo String o FixedString contiene solo bytes ASCII (0x00–0x7F); en caso contrario, 0. Está optimizado para el caso positivo (la entrada es ASCII válida). Sintaxis
isValidASCII(str)
Alias: isASCII Argumentos
  • Ninguno.
Valor devuelto Ejemplos isValidASCII
Query
SELECT isValidASCII('hello') AS is_ascii, isValidASCII('你好') AS is_not_ascii
Response

isValidUTF8

Introducido en: v20.1.0 Comprueba si la secuencia de bytes forma un texto válido codificado en UTF-8. Sintaxis
isValidUTF8(s)
Argumentos
  • s — La cadena cuya validez de codificación UTF-8 se comprobará. String
Valor devuelto Devuelve 1 si el conjunto de bytes constituye texto válido codificado en UTF-8; de lo contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT isValidUTF8('\\xc3\\xb1') AS valid, isValidUTF8('\\xc3\\x28') AS invalid
Response
┌─valid─┬─invalid─┐
│     1 │       0 │
└───────┴─────────┘

jaroSimilarity

Introducido en: v24.1.0 Calcula la similitud de Jaro entre dos cadenas de bytes. Sintaxis
jaroSimilarity(s1, s2)
Argumentos
  • s1 — Primera cadena de entrada. String
  • s2 — Segunda cadena de entrada. String
Valor devuelto Devuelve la similitud Jaro entre ambas cadenas. Float64 Ejemplos Ejemplo de uso
Query
SELECT jaroSimilarity('clickhouse', 'click')
Response
┌─jaroSimilarity('clickhouse', 'click')─┐
│                    0.8333333333333333 │
└───────────────────────────────────────┘

jaroWinklerSimilarity

Introducido en: v24.1.0 Calcula la similitud de Jaro-Winkler entre dos cadenas de bytes. Sintaxis
jaroWinklerSimilarity(s1, s2)
Argumentos
  • s1 — Primera cadena de entrada. String
  • s2 — Segunda cadena de entrada. String
Valor devuelto Devuelve la similitud de Jaro-Winkler entre ambas cadenas. Float64 Ejemplos Ejemplo de uso
Query
SELECT jaroWinklerSimilarity('clickhouse', 'click')
Response
┌─jaroWinklerSimilarity('clickhouse', 'click')─┐
│                           0.8999999999999999 │
└──────────────────────────────────────────────┘

left

Introducido en: v22.1.0 Devuelve una subcadena de la cadena s con un offset especificado, a partir de la izquierda. Sintaxis
left(s, offset)
Argumentos
  • s — La cadena a partir de la cual se calcula una subcadena. String o FixedString
  • offset — La cantidad de bytes de desplazamiento. (U)Int*
Valor devuelto Devuelve:
  • Para offset positivo, una subcadena de s de offset bytes, empezando por la izquierda de la cadena.
  • Para offset negativo, una subcadena de s de length(s) - |offset| bytes, empezando por la izquierda de la cadena.
  • Una cadena vacía si length es 0. String
Ejemplos Desplazamiento positivo
Query
SELECT left('Hello World', 5)
Response
Hello
Offset negativo
Query
SELECT left('Hello World', -6)
Response
Hello

leftPad

Introducido en: v21.8.0 Rellena una cadena por la izquierda con espacios o con una cadena especificada (varias veces, si es necesario) hasta que la cadena resultante alcance la length especificada. Sintaxis
leftPad(string, length[, pad_string])
Alias: lpad Argumentos
  • string — Cadena de entrada que debe rellenarse. String
  • length — Longitud de la cadena resultante. Si el valor es menor que la longitud de la cadena de entrada, esta se acorta a length caracteres. (U)Int*
  • pad_string — Opcional. Cadena utilizada para rellenar la cadena de entrada. Si no se especifica, la cadena de entrada se rellena con espacios. String
Valor devuelto Devuelve una cadena rellenada por la izquierda con la longitud indicada. String Ejemplos Ejemplo de uso
Query
SELECT leftPad('abc', 7, '*'), leftPad('def', 7)
Response
┌─leftPad('abc', 7, '*')─┬─leftPad('def', 7)─┐
│ ****abc                │     def           │
└────────────────────────┴───────────────────┘

leftPadUTF8

Introducido en: v21.8.0 Rellena una cadena UTF-8 por la izquierda con espacios o con una cadena especificada (repetida varias veces, si es necesario) hasta que la cadena resultante alcance la longitud indicada. A diferencia de leftPad, que mide la longitud de la cadena en bytes, aquí la longitud de la cadena se mide en puntos de código. Sintaxis
leftPadUTF8(string, length[, pad_string])
Argumentos
  • string — Cadena de entrada que se debe rellenar. String
  • length — La longitud de la cadena resultante. Si el valor es menor que la longitud de la cadena de entrada, esta se acorta a length caracteres. (U)Int*
  • pad_string — Opcional. La cadena con la que se rellena la cadena de entrada. Si no se especifica, la cadena de entrada se rellena con espacios. String
Valor devuelto Devuelve una cadena rellenada por la izquierda con la longitud indicada. String Ejemplos Ejemplo de uso
Query
SELECT leftPadUTF8('абвг', 7, '*'), leftPadUTF8('дежз', 7)
Response
┌─leftPadUTF8('абвг', 7, '*')─┬─leftPadUTF8('дежз', 7)─┐
│ ***абвг                     │    дежз                │
└─────────────────────────────┴────────────────────────┘

leftUTF8

Introducido en: v22.1.0 Devuelve una subcadena de una cadena s codificada en UTF-8, con un offset especificado desde la izquierda. Sintaxis
leftUTF8(s, offset)
Argumentos
  • s — La cadena codificada en UTF-8 a partir de la cual se calcula una subcadena. String o FixedString
  • offset — El desplazamiento en bytes. (U)Int*
Valor devuelto Devuelve:
  • Para un offset positivo, una subcadena de s de offset bytes, empezando desde la izquierda de la cadena.\n”
  • Para un offset negativo, una subcadena de s de length(s) - |offset| bytes, empezando desde la izquierda de la cadena.\n”
  • Una cadena vacía si length es 0. String
Ejemplos Desplazamiento positivo
Query
SELECT leftUTF8('Привет', 4)
Response
Прив
Offset negativo
Query
SELECT leftUTF8('Привет', -4)
Response
Пр

lengthUTF8

Introducido en: v1.1.0 Devuelve la longitud de una cadena en puntos de código Unicode en lugar de en bytes o caracteres. Supone que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
lengthUTF8(s)
Alias: CHARACTER_LENGTH, CHAR_LENGTH Argumentos
  • s — Cadena que contiene texto codificado en UTF-8 válido. String
Valor devuelto Longitud de la cadena s en puntos de código Unicode. UInt64 Ejemplos Ejemplo de uso
Query
SELECT lengthUTF8('Здравствуй, мир!')
Response
┌─lengthUTF8('Здравствуй, мир!')─┐
│                             16 │
└────────────────────────────────┘

lower

Introducido en: v1.1.0 Convierte una cadena ASCII en minúsculas. Sintaxis
lower(s)
Alias: lcase Argumentos
  • s — Una cadena para convertir a minúsculas. String
Valor devuelto Devuelve s en minúsculas. String Ejemplos Ejemplo de uso
Query
SELECT lower('CLICKHOUSE')
Response
┌─lower('CLICKHOUSE')─┐
│ clickhouse          │
└─────────────────────┘

lowerUTF8

Introducido en: v1.1.0 Convierte una cadena a minúsculas, suponiendo que contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
lowerUTF8(input)
Argumentos
  • input — Cadena de entrada que se convierte a minúsculas. String
Valor devuelto Devuelve una cadena en minúsculas. String Ejemplos primero
Query
SELECT lowerUTF8('München') as Lowerutf8;
Response
münchen

naturalSortKey

Introducido en: v26.3.0 La función se utiliza para realizar una ordenación natural. Sintaxis
naturalSortKey(s)
Alias: NATURAL_SORT_KEY Argumentos
  • s — Una cadena para convertirla en una clave de ordenación natural. String
Valor devuelto Devuelve una cadena con la clave de ordenación natural de s. String Ejemplos Ejemplo de uso
Query
SELECT s FROM t ORDER BY naturalSortKey(s)
Response
┌─s───┐
│ a1  │
| a02 │
└─────┘

normalizeUTF8NFC

Introducida en: v21.11.0 Normaliza una cadena UTF-8 de acuerdo con la forma de normalización NFC. Sintaxis
normalizeUTF8NFC(str)
Argumentos
  • str — cadena de entrada codificada en UTF-8. String
Valor devuelto Devuelve la forma normalizada NFC de la cadena UTF-8. String Ejemplos Ejemplo de uso
Query
SELECT
'é' AS original, -- e + acento agudo combinado (U+0065 + U+0301)
length(original),
normalizeUTF8NFC('é') AS nfc_normalized, -- é (U+00E9)
length(nfc_normalized);
Response
┌─original─┬─length(original)─┬─nfc_normalized─┬─length(nfc_normalized)─┐
│ é        │                2 │ é              │                      2 │
└──────────┴──────────────────┴────────────────┴────────────────────────┘

normalizeUTF8NFD

Introducido en: v21.11.0 Normaliza una cadena UTF-8 según la forma de normalización NFD. Sintaxis
normalizeUTF8NFD(str)
Argumentos
  • str — cadena de entrada codificada en UTF-8. String
Valor devuelto Devuelve la forma normalizada NFD de la cadena en UTF-8. String Ejemplos Ejemplo de uso
Query
SELECT
    'é' AS original, -- é (U+00E9)
    length(original),
    normalizeUTF8NFD('é') AS nfd_normalized, -- e + acento combinatorio (U+0065 + U+0301)
    length(nfd_normalized);
Response
┌─original─┬─length(original)─┬─nfd_normalized─┬─length(nfd_normalized)─┐
│ é        │                2 │ é              │                      3 │
└──────────┴──────────────────┴────────────────┴────────────────────────┘

normalizeUTF8NFKC

Introducido en: v21.11.0 Normaliza una cadena en UTF-8 según la forma de normalización NFKC. Sintaxis
normalizeUTF8NFKC(str)
Argumentos
  • str — cadena de entrada codificada en UTF-8. String
Valor devuelto Devuelve la forma NFKC normalizada de la cadena UTF-8. String Ejemplos Ejemplo de uso
Query
SELECT
    '① ② ③' AS original,                            -- Caracteres de números en círculo
    normalizeUTF8NFKC('① ② ③') AS nfkc_normalized;  -- Se convierte en 1 2 3
Response
┌─original─┬─nfkc_normalized─┐
│ ① ② ③  │ 1 2 3           │
└──────────┴─────────────────┘

normalizeUTF8NFKCCasefold

Introducido en: v26.3.0 Normaliza una cadena UTF-8 según la forma de normalización NFKC_Casefold, que aplica la normalización NFKC y, a continuación, realiza el case folding. Esto resulta útil para la comparación de identificadores sin distinción entre mayúsculas y minúsculas. Sintaxis
normalizeUTF8NFKCCasefold(str)
Argumentos
  • str — cadena de entrada codificada en UTF-8. String
Valor devuelto Devuelve la forma normalizada NFKC_Casefold de la cadena codificada en UTF-8. String Ejemplos Ejemplo de uso
Query
SELECT
    'Ä ① Hello' AS original,
    normalizeUTF8NFKCCasefold('Ä ① Hello') AS nfkc_cf_normalized;
Response
┌─original───┬─nfkc_cf_normalized─┐
│ Ä ① Hello │ ä 1 hello           │
└────────────┴────────────────────┘

normalizeUTF8NFKD

Introducido en: v21.11.0 Normaliza una cadena UTF-8 de acuerdo con la forma de normalización NFKD. Sintaxis
normalizeUTF8NFKD(str)
Argumentos
  • str — Cadena de entrada codificada en UTF-8. String
Valor devuelto Devuelve la forma normalizada NFKD de la cadena codificada en UTF-8. String Ejemplos Ejemplo de uso
Query
SELECT
    'H₂O²' AS original,                            -- H + subíndice 2 + O + superíndice 2
    normalizeUTF8NFKD('H₂O²') AS nfkd_normalized;  -- Convierte a H 2 O 2
Response
┌─original─┬─nfkd_normalized─┐
│ H₂O²     │ H2O2            │
└──────────┴─────────────────┘

punycodeDecode

Introducido en: v24.1.0 Devuelve el texto sin formato codificado en UTF-8 de una cadena codificada en Punycode. Si no se proporciona una cadena válida codificada en Punycode, se genera una excepción. Sintaxis
punycodeDecode(s)
Argumentos
  • s — Cadena codificada en Punycode. String
Valor devuelto Devuelve el texto sin formato del valor de entrada. String Ejemplos Ejemplo de uso
Query
SELECT punycodeDecode('Mnchen-3ya')
Response
┌─punycodeDecode('Mnchen-3ya')─┐
│ München                      │
└──────────────────────────────┘

punycodeEncode

Introducido en: v24.1.0 Devuelve la representación en Punycode de una cadena. La cadena debe estar codificada en UTF-8; de lo contrario, el comportamiento no está definido. Sintaxis
punycodeEncode(s)
Argumentos
  • s — Valor de entrada. String
Valor devuelto Devuelve la representación en Punycode del valor de entrada. String Ejemplos Ejemplo de uso
Query
SELECT punycodeEncode('München')
Response
┌─punycodeEncode('München')─┐
│ Mnchen-3ya                │
└───────────────────────────┘

regexpExtract

Introducido en: v23.2.0 Extrae la primera cadena de haystack que coincide con el patrón de expresión regular y corresponde al índice del grupo de la expresión regular. Sintaxis
regexpExtract(haystack, pattern[, index])
Alias: REGEXP_EXTRACT Argumentos
  • haystack — String, donde se buscará la coincidencia con el patrón regexp. String
  • pattern — String, expresión regular. pattern puede contener varios grupos regexp; index indica qué grupo de la expresión regular se extraerá. Un índice de 0 significa que se extrae la coincidencia de la expresión regular completa. const String
  • index — Opcional. Un número entero mayor o igual que 0, con valor predeterminado 1. Representa qué grupo de la expresión regular se extraerá. (U)Int*
Valor devuelto Devuelve una coincidencia como cadena String Ejemplos Ejemplo de uso
Query
SELECT
    regexpExtract('100-200', '(\\d+)-(\\d+)', 1),
    regexpExtract('100-200', '(\\d+)-(\\d+)', 2),
    regexpExtract('100-200', '(\\d+)-(\\d+)', 0),
    regexpExtract('100-200', '(\\d+)-(\\d+)');
Response
┌─regexpExtract('100-200', '(\\d+)-(\\d+)', 1)─┬─regexpExtract('100-200', '(\\d+)-(\\d+)', 2)─┬─regexpExtract('100-200', '(\\d+)-(\\d+)', 0)─┬─regexpExtract('100-200', '(\\d+)-(\\d+)')─┐
│ 100                                          │ 200                                          │ 100-200                                      │ 100                                       │
└──────────────────────────────────────────────┴──────────────────────────────────────────────┴──────────────────────────────────────────────┴───────────────────────────────────────────┘

regexpPosition

Introducido en: v26.5.0 Devuelve la posición en bytes (basada en 1) de la coincidencia número occurrence de pattern en haystack, comenzando la búsqueda en la posición en bytes position. Si return_option es 0 (valor predeterminado), devuelve la posición del primer byte de la coincidencia. Si es 1, devuelve la posición del primer byte después de la coincidencia. Si subexpression es mayor que 0, devuelve la posición del grupo de captura correspondiente en lugar de la coincidencia completa. Devuelve 0 si no se encuentra ninguna coincidencia o si el grupo de captura solicitado no participó en la coincidencia. Se proporciona por compatibilidad con regexp_instr de PostgreSQL (también disponible con ese alias). Ten en cuenta que las posiciones se basan en bytes, en consonancia con otras funciones de expresiones regulares de ClickHouse; regexp_instr de PostgreSQL se basa en caracteres. Sintaxis
regexpPosition(haystack, pattern[, position[, occurrence[, return_option[, flags[, subexpression]]]]])
Alias: regexpInstr, regexp_instr Argumentos
  • haystack — Cadena en la que buscar. String
  • pattern — Patrón de expresión regular. const String
  • position — Opcional. Posición en bytes, basada en 1, desde la que se inicia la búsqueda. Valor predeterminado: 1. (U)Int*
  • occurrence — Opcional. Qué coincidencia devolver. Valor predeterminado: 1. (U)Int*
  • return_option — Opcional. 0 devuelve la posición de inicio de la coincidencia; 1 devuelve la posición inmediatamente posterior a la coincidencia. Valor predeterminado: 0. (U)Int*
  • flags — Opcional. Banderas de regex. Compatibles: i (sin distinción entre mayúsculas y minúsculas), c (con distinción entre mayúsculas y minúsculas), m/n (anclajes multilínea), s (el punto coincide con el salto de línea). Valor predeterminado: vacío. const String
  • subexpression — Opcional. Índice del grupo de captura cuya posición se devolverá. 0 significa la coincidencia completa. Valor predeterminado: 0. (U)Int*
Valor devuelto Devuelve la posición en bytes de la coincidencia, o 0 si no se encuentra. UInt64 Ejemplos Uso básico
Query
SELECT
    regexpPosition('hello world', 'world'),
    regexpPosition('aXbXcXd', 'X', 1, 2),
    regexpPosition('aXbXcXd', 'X', 1, 2, 1),
    regexpPosition('Hello WORLD', 'world', 1, 1, 0, 'i'),
    regexpPosition('foo123bar456', '([a-z]+)([0-9]+)', 1, 2, 0, '', 2);
Response
┌─...─┬─...─┬─...─┬─...─┬─...─┐
│   7 │   4 │   5 │   7 │  10 │
└─────┴─────┴─────┴─────┴─────┘

removeDiacriticsUTF8

Introducido en: v26.3.0 Elimina las marcas diacríticas (acentos) de una cadena UTF-8 al descomponer los caracteres mediante NFD, eliminar las marcas de combinación (categoría Unicode Mn) y volver a componerlos mediante NFC. Sintaxis
removeDiacriticsUTF8(str)
Alias: removeAccentsUTF8 Argumentos
  • str — cadena de entrada codificada en UTF-8. String
Valor devuelto Cadena UTF-8 sin diacríticos. String Ejemplos Eliminación básica de acentos
Query
SELECT removeDiacriticsUTF8('café résumé naïve')
Response
┌─removeDiacriticsUTF8('café résumé naïve')─┐
│ cafe resume naive                          │
└────────────────────────────────────────────┘

repeat

Introducido en: v20.1.0 Concatena una cadena consigo misma tantas veces como se indique. Sintaxis
repeat(s, n)
Argumentos
  • s — La cadena que se debe repetir. String
  • n — El número de veces que se debe repetir la cadena. (U)Int*
Valor devuelto Una cadena que contiene s repetida n veces. Si n es negativo, la función devuelve una cadena vacía. String Ejemplos Ejemplo de uso
Query
SELECT repeat('abc', 10)
Response
┌─repeat('abc', 10)──────────────┐
│ abcabcabcabcabcabcabcabcabcabc │
└────────────────────────────────┘

reverseUTF8

Introducido en: v1.1.0 Invierte una secuencia de puntos de código Unicode en una cadena. Supone que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
reverseUTF8(s)
Argumentos
  • s — Cadena que contiene texto válido codificado en UTF-8. String
Valor devuelto Devuelve una cadena con la secuencia de puntos de código Unicode invertida. String Ejemplos Ejemplo de uso
Query
SELECT reverseUTF8('ClickHouse')
Response
esuoHkcilC
Introducido en: v22.1.0 Devuelve una subcadena de la cadena s con un offset especificado a partir de la derecha. Sintaxis
right(s, offset)
Argumentos
  • s — La cadena a partir de la cual se calculará una subcadena. String o FixedString
  • offset — El número de bytes de desplazamiento. (U)Int*
Valor devuelto Devuelve:
  • Para un offset positivo, una subcadena de s de offset bytes, empezando por la derecha de la cadena.
  • Para un offset negativo, una subcadena de s de length(s) - |offset| bytes, empezando por la derecha de la cadena.
  • Una cadena vacía si length es 0. String
Ejemplos Desplazamiento positivo
Query
SELECT right('Hello', 3)
Response
llo
Offset negativo
Query
SELECT right('Hello', -3)
Response
lo

rightPad

Introducido en: v21.8.0 Rellena una cadena por la derecha con espacios o con una cadena especificada (repitiéndola varias veces, si es necesario) hasta que la cadena resultante alcance la length especificada. Sintaxis
rightPad(string, length[, pad_string])
Alias: rpad Argumentos
  • string — Cadena de entrada que se debe rellenar. String
  • length — La longitud de la cadena resultante. Si el valor es menor que la longitud de la cadena de entrada, esta se acorta a length caracteres. (U)Int*
  • pad_string — Opcional. La cadena con la que se rellena la cadena de entrada. Si no se especifica, la cadena de entrada se rellena con espacios. String
Valor devuelto Devuelve una cadena rellenada por la derecha con la longitud especificada. String Ejemplos Ejemplo de uso
Query
SELECT rightPad('abc', 7, '*'), rightPad('abc', 7)
Response
┌─rightPad('abc', 7, '*')─┬─rightPad('abc', 7)─┐
│ abc****                 │ abc                │
└─────────────────────────┴────────────────────┘

rightPadUTF8

Introducido en: v21.8.0 Rellena la cadena por la derecha con espacios o con una cadena especificada (varias veces, si es necesario) hasta que la cadena resultante alcance la longitud indicada. A diferencia de rightPad, que mide la longitud de la cadena en bytes, aquí la longitud de la cadena se mide en puntos de código. Sintaxis
rightPadUTF8(string, length[, pad_string])
Argumentos
  • string — Cadena de entrada que se debe rellenar. String
  • length — La longitud de la cadena resultante. Si el valor es menor que la longitud de la cadena de entrada, esta se acorta a length caracteres. (U)Int*
  • pad_string — Opcional. La cadena con la que se rellena la cadena de entrada. Si no se especifica, la cadena de entrada se rellena con espacios. String
Valor devuelto Devuelve una cadena de la longitud indicada, rellenada por la derecha. String Ejemplos Ejemplo de uso
Query
SELECT rightPadUTF8('абвг', 7, '*'), rightPadUTF8('абвг', 7)
Response
┌─rightPadUTF8('абвг', 7, '*')─┬─rightPadUTF8('абвг', 7)─┐
│ абвг***                      │ абвг                    │
└──────────────────────────────┴─────────────────────────┘

rightUTF8

Introducido en: v22.1.0 Devuelve una subcadena de la cadena s, codificada en UTF-8, con un offset especificado desde la derecha. Sintaxis
rightUTF8(s, offset)
Argumentos
  • s — La cadena codificada en UTF-8 de la que se calcula una subcadena. String o FixedString
  • offset — El número de bytes del desplazamiento. (U)Int*
Valor devuelto Devuelve:
  • Para offset positivo, una subcadena de s de offset bytes, empezando por la derecha de la cadena.
  • Para offset negativo, una subcadena de s de length(s) - |offset| bytes, empezando por la derecha de la cadena.
  • Una cadena vacía si length es 0. String
Ejemplos Desplazamiento positivo
Query
SELECT rightUTF8('Привет', 4)
Response
ивет
Desplazamiento negativo
Query
SELECT rightUTF8('Привет', -4)
Response
ет

soundex

Introducido en: v23.4.0 Devuelve el código Soundex de una cadena. Sintaxis
soundex(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve el código Soundex de la cadena de entrada. String Ejemplos Ejemplo de uso
Query
SELECT soundex('aksel')
Response
┌─soundex('aksel')─┐
│ A240             │
└──────────────────┘

space

Introducido en: v23.5.0 Concatena un espacio ( ) consigo mismo tantas veces como se indique. Sintaxis
space(n)
Argumentos
  • n — El número de veces que se repite el carácter de espacio. (U)Int*
Valor devuelto Devuelve una cadena que contiene un espacio repetido n veces. Si n <= 0, la función devuelve la cadena vacía. String Ejemplos Ejemplo de uso
Query
SELECT space(3) AS res, length(res);
Response
┌─res─┬─length(res)─┐
│     │           3 │
└─────┴─────────────┘

sparseGrams

Introducido en: v25.5.0 Encuentra todas las subcadenas de una cadena dada que tengan una longitud de al menos n, donde los hashes de los (n-1)-gramas en los extremos de la subcadena son estrictamente mayores que los de cualquier (n-1)-grama dentro de ella. Usa CRC32 como función hash. Sintaxis
sparseGrams(s[, min_ngram_length[, max_ngram_length[, min_cutoff_length]]])
Argumentos
  • s — Una cadena de entrada. String
  • min_ngram_length — Opcional. La longitud mínima del ngrama extraído. El valor predeterminado, que también es el mínimo, es 3. UInt*
  • max_ngram_length — Opcional. La longitud máxima del ngrama extraído. El valor predeterminado es 100. No debe ser menor que min_ngram_length. UInt*
  • min_cutoff_length — Opcional. Si se especifica, solo se devuelven n-gramas cuya longitud sea mayor o igual que min_cutoff_length. El valor predeterminado es el mismo que min_ngram_length. No debe ser menor que min_ngram_length ni mayor que max_ngram_length. UInt*
Valor devuelto Devuelve un array de subcadenas seleccionadas. Array(String) Ejemplos Ejemplo de uso
Query
SELECT sparseGrams('alice', 3)
Response
┌─sparseGrams('alice', 3)────────────┐
│ ['ali','lic','lice','ice']         │
└────────────────────────────────────┘

sparseGramsHashes

Introducido en: v25.5.0 Encuentra los valores hash de todas las subcadenas de una cadena dada que tengan una longitud de al menos n, donde los valores hash de los ngramas de longitud n-1 en los bordes de la subcadena sean estrictamente mayores que los de cualquier ngrama de longitud n-1 dentro de la subcadena. Usa CRC32 como función hash. Sintaxis
sparseGramsHashes(s[, min_ngram_length, max_ngram_length])
Argumentos
  • s — Una cadena de entrada. String
  • min_ngram_length — Opcional. La longitud mínima del ngrama extraído. El valor predeterminado y mínimo es 3. UInt*
  • max_ngram_length — Opcional. La longitud máxima del ngrama extraído. El valor predeterminado es 100. No debe ser inferior a min_ngram_length. UInt*
  • min_cutoff_length — Opcional. Si se especifica, solo se devuelven los ngramas con una longitud mayor o igual que min_cutoff_length. El valor predeterminado es el mismo que min_ngram_length. No debe ser inferior a min_ngram_length ni superior a max_ngram_length. UInt*
Valor devuelto Devuelve un array de hash CRC32 de las subcadenas seleccionadas. Array(UInt32) Ejemplos Ejemplo de uso
Query
SELECT sparseGramsHashes('alice', 3)
Response
┌─sparseGramsHashes('alice', 3)──────────────────────┐
│ [1481062250,2450405249,4012725991,1918774096]      │
└────────────────────────────────────────────────────┘

sparseGramsHashesUTF8

Introducido en: v25.5.0 Encuentra los hashes de todas las subcadenas de una cadena UTF-8 dada con una longitud de al menos n, donde los hashes de los (n-1)-gramas en los bordes de la subcadena son estrictamente mayores que los de cualquier (n-1)-grama dentro de la subcadena. Espera una cadena UTF-8 y lanza una excepción en caso de secuencia UTF-8 no válida. Usa CRC32 como función hash. Sintaxis
sparseGramsHashesUTF8(s[, min_ngram_length, max_ngram_length])
Argumentos
  • s — Una cadena de entrada. String
  • min_ngram_length — Opcional. La longitud mínima del ngrama extraído. El valor predeterminado y mínimo es 3. UInt*
  • max_ngram_length — Opcional. La longitud máxima del ngrama extraído. El valor predeterminado es 100. No debe ser inferior a min_ngram_length. UInt*
  • min_cutoff_length — Opcional. Si se especifica, solo se devuelven n-grams con una longitud igual o mayor que min_cutoff_length. El valor predeterminado es el mismo que min_ngram_length. No debe ser inferior a min_ngram_length ni superior a max_ngram_length. UInt*
Valor devuelto Devuelve un Array de hashes CRC32 de las subcadenas UTF-8 seleccionadas. Array(UInt32) Ejemplos Ejemplo de uso
Query
SELECT sparseGramsHashesUTF8('алиса', 3)
Response
┌─sparseGramsHashesUTF8('алиса', 3)─┐
│ [4178533925,3855635300,561830861] │
└───────────────────────────────────┘

sparseGramsUTF8

Introducido en: v25.5.0 Encuentra todas las subcadenas de una cadena UTF-8 dada que tengan una longitud de al menos n, donde los valores hash de los (n-1)-gramas en los extremos de la subcadena son estrictamente mayores que los de cualquier (n-1)-grama dentro de la subcadena. Espera una cadena UTF-8 y genera una excepción si la secuencia UTF-8 no es válida. Usa CRC32 como función hash. Sintaxis
sparseGramsUTF8(s[, min_ngram_length[, max_ngram_length[, min_cutoff_length]]])
Argumentos
  • s — Una cadena de entrada. String
  • min_ngram_length — Opcional. La longitud mínima del n-grama extraído. El valor predeterminado y mínimo es 3. UInt*
  • max_ngram_length — Opcional. La longitud máxima del n-grama extraído. El valor predeterminado es 100. No debe ser inferior a min_ngram_length. UInt*
  • min_cutoff_length — Opcional. Si se especifica, solo se devuelven los n-gramas con una longitud mayor o igual que min_cutoff_length. El valor predeterminado es el mismo que min_ngram_length. No debe ser inferior a min_ngram_length ni superior a max_ngram_length. UInt*
Valor devuelto Devuelve un array de subcadenas UTF-8 seleccionadas. Array(String) Ejemplos Ejemplo de uso
Query
SELECT sparseGramsUTF8('алиса', 3)
Response
┌─sparseGramsUTF8('алиса', 3)─┐
│ ['али','лис','иса']         │
└─────────────────────────────┘

startsWith

Introducido en: v1.1.0 Comprueba si una cadena empieza por la cadena proporcionada. Sintaxis
startsWith(s, prefix)
Argumentos
  • s — Cadena que se va a comprobar. String
  • prefix — Prefijo que se va a comprobar. String
Valor devuelto Devuelve 1 si s comienza con prefix; en caso contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT startsWith('ClickHouse', 'Click');
Response
┌─startsWith('⋯', 'Click')─┐
│                        1 │
└──────────────────────────┘

startsWithCaseInsensitive

Introducido en: v25.10.0 Comprueba si una cadena empieza por la cadena proporcionada sin distinguir entre mayúsculas y minúsculas. Sintaxis
startsWithCaseInsensitive(s, prefix)
Argumentos
  • s — Cadena que se comprobará. String
  • prefix — Prefijo sin distinción entre mayúsculas y minúsculas que se comprobará. String
Valor devuelto Devuelve 1 si s comienza por el prefix sin distinguir entre mayúsculas y minúsculas; en caso contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT startsWithCaseInsensitive('ClickHouse', 'CLICK');
Response
┌─startsWithCaseInsensitive('⋯', 'CLICK')─┐
│                                       1 │
└─────────────────────────────────────────┘

startsWithCaseInsensitiveUTF8

Introducido en: v25.10.0 Comprueba si una cadena comienza con el prefijo proporcionado sin distinguir entre mayúsculas y minúsculas. Se asume que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
startsWithCaseInsensitiveUTF8(s, prefix)
Argumentos
  • s — Cadena que se debe comprobar. String
  • prefix — Prefijo, sin distinguir entre mayúsculas y minúsculas, cuya coincidencia se debe comprobar. String
Valor devuelto Devuelve 1 si s empieza por prefix sin distinguir entre mayúsculas y minúsculas; en caso contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT startsWithCaseInsensitiveUTF8('приставка', 'при')
Response
┌─startsWithUT⋯ка', 'при')─┐
│                        1 │
└──────────────────────────┘

startsWithUTF8

Introducido en: v23.8.0 Comprueba si una cadena empieza por el prefijo proporcionado. Asume que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
startsWithUTF8(s, prefix)
Argumentos
  • s — Cadena que se va a comprobar. String
  • prefix — Prefijo que se va a comprobar. String
Valor devuelto Devuelve 1 si s empieza por prefix; de lo contrario, 0. UInt8 Ejemplos Ejemplo de uso
Query
SELECT startsWithUTF8('приставка', 'при')
Response
┌─startsWithUT⋯ка', 'при')─┐
│                        1 │
└──────────────────────────┘

stringBytesEntropy

Introducido en: v25.6.0 Calcula la entropía de Shannon de la distribución de bytes de una cadena. Sintaxis
stringBytesEntropy(s)
Argumentos
  • s — La cadena que se va a analizar. String
Valor devuelto Devuelve la entropía de Shannon de la distribución de bytes de la cadena. Float64 Ejemplos Ejemplo de uso
Query
SELECT stringBytesEntropy('Hello, world!')
Response
┌─stringBytesEntropy('Hello, world!')─┐
│                         3.07049960  │
└─────────────────────────────────────┘

stringBytesUniq

Introducido en: v25.6.0 Cuenta el número de bytes distintos de una cadena. Sintaxis
stringBytesUniq(s)
Argumentos
  • s — La cadena que se analizará. String
Valor devuelto Devuelve el número de bytes distintos de la cadena. UInt16 Ejemplos Ejemplo de uso
Query
SELECT stringBytesUniq('Hello')
Response
┌─stringBytesUniq('Hello')─┐
│                        4 │
└──────────────────────────┘

stringJaccardIndex

Introducido en: v23.11.0 Calcula el índice de similitud de Jaccard entre dos cadenas de bytes. Sintaxis
stringJaccardIndex(s1, s2)
Argumentos
  • s1 — Primera cadena de entrada. String
  • s2 — Segunda cadena de entrada. String
Valor devuelto Devuelve el índice de similitud de Jaccard entre ambas cadenas. Float64 Ejemplos Ejemplo de uso
Query
SELECT stringJaccardIndex('clickhouse', 'mouse')
Response
┌─stringJaccardIndex('clickhouse', 'mouse')─┐
│                                       0.4 │
└───────────────────────────────────────────┘

stringJaccardIndexUTF8

Introducido en: v23.11.0 Igual que stringJaccardIndex, pero para cadenas codificadas en UTF-8. Sintaxis
stringJaccardIndexUTF8(s1, s2)
Argumentos
  • s1 — Primera cadena UTF-8 de entrada. String
  • s2 — Segunda cadena UTF-8 de entrada. String
Valor devuelto Devuelve el índice de similitud de Jaccard entre las dos cadenas UTF-8. Float64 Ejemplos Ejemplo de uso
Query
SELECT stringJaccardIndexUTF8('我爱你', '我也爱你')
Response
┌─stringJaccardIndexUTF8('我爱你', '我也爱你')─┐
│                                       0.75 │
└─────────────────────────────────────────────┘

substring

Introducido en: v1.1.0 Devuelve la subcadena de una cadena s que comienza en el índice de bytes offset especificado. El recuento de bytes comienza en 1 con la siguiente lógica:
  • Si offset es 0, se devuelve una cadena vacía.
  • Si offset es negativo, la subcadena comienza offset caracteres desde el final de la cadena, en lugar de hacerlo desde el principio.
Un argumento opcional, length, especifica el número máximo de bytes que puede tener la subcadena devuelta. Sintaxis
substring(s, offset[, length])
Alias: byteSlice, mid, substr Argumentos
  • s — La cadena de la que se extrae una subcadena. String o FixedString o Enum
  • offset — La posición inicial de la subcadena en s. (U)Int*
  • length — Opcional. La longitud máxima de la subcadena. (U)Int*
Valor devuelto Devuelve una subcadena de s de length bytes, a partir del índice offset. String Ejemplos Uso básico
Query
SELECT 'database' AS db, substr(db, 5), substr(db, 5, 1)
Response
┌─db───────┬─substring('database', 5)─┬─substring('database', 5, 1)─┐
│ database │ base                     │ b                           │
└──────────┴──────────────────────────┴─────────────────────────────┘

substringIndex

Introducido en: v23.7.0 Devuelve la subcadena de s situada antes de la count-ésima aparición del delimitador delim, como en Spark o MySQL. Sintaxis
substringIndex(s, delim, count)
alias: SUBSTRING_INDEX Argumentos
  • s — La cadena de la que se extrae la subcadena. String
  • delim — El carácter delimitador. String
  • count — El número de apariciones del delimitador que se cuentan antes de extraer la subcadena. Si count es positivo, se devuelve todo lo que está a la izquierda del delimitador final (contando desde la izquierda). Si count es negativo, se devuelve todo lo que está a la derecha del delimitador final (contando desde la derecha). UInt o Int
Valor devuelto Devuelve una subcadena de s situada antes de count apariciones de delim. String Ejemplos Ejemplo de uso
Query
SELECT substringIndex('www.clickhouse.com', '.', 2)
Response
┌─substringIndex('www.clickhouse.com', '.', 2)─┐
│ www.clickhouse                               │
└──────────────────────────────────────────────┘

substringIndexUTF8

Introducido en: v23.7.0 Devuelve la subcadena de s anterior a count apariciones del delimitador delim, específicamente para puntos de código Unicode. Asume que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido. Sintaxis
substringIndexUTF8(s, delim, count)
Argumentos
  • s — La cadena de la que se extrae la subcadena. String
  • delim — El carácter delimitador. String
  • count — El número de apariciones del delimitador que se cuentan antes de extraer la subcadena. Si count es positivo, se devuelve todo lo que queda a la izquierda del delimitador final (contando desde la izquierda). Si count es negativo, se devuelve todo lo que queda a la derecha del delimitador final (contando desde la derecha). UInt o Int
Valor devuelto Devuelve una subcadena de s situada antes de count apariciones de delim. String Ejemplos Ejemplo de UTF8
Query
SELECT substringIndexUTF8('www.straßen-in-europa.de', '.', 2)
Response
www.straßen-in-europa

substringUTF8

Introducido en: v1.1.0 Devuelve la subcadena de una cadena s que comienza en el índice de punto de código offset especificado. El recuento de puntos de código comienza en 1 con la siguiente lógica:
  • Si offset es 0, se devuelve una cadena vacía.
  • Si offset es negativo, la subcadena comienza offset puntos de código antes del final de la cadena, en lugar de hacerlo desde el principio.
Un argumento opcional, length, especifica el número máximo de puntos de código que puede tener la subcadena devuelta.
Esta función asume que la cadena contiene texto válido codificado en UTF-8. Si no se cumple esta suposición, no se lanza ninguna excepción y el resultado es indefinido.
Sintaxis
substringUTF8(s, offset[, length])
Argumentos
  • s — La cadena de la que se extraerá una subcadena. String o FixedString o Enum
  • offset — La posición inicial de la subcadena en s. Int o UInt
  • length — La longitud máxima de la subcadena. Opcional. Int o UInt
Valor devuelto Devuelve una subcadena de s de hasta length puntos de código, a partir del índice de punto de código offset. String Ejemplos Ejemplo de uso
Query
SELECT 'Täglich grüßt das Murmeltier.' AS str, substringUTF8(str, 9), substringUTF8(str, 9, 5)
Response
Täglich grüßt das Murmeltier.    grüßt das Murmeltier.    grüßt

toValidUTF8

Introducido en: v20.1.0 Convierte una cadena a una codificación UTF-8 válida sustituyendo cualquier carácter UTF-8 no válido por el carácter de reemplazo (U+FFFD). Cuando se encuentran varios caracteres no válidos consecutivos, se sustituyen por un único carácter de reemplazo. Sintaxis
toValidUTF8(s)
Argumentos
  • s — Cualquier conjunto de bytes representado como un objeto del tipo de dato String. String
Valor devuelto Devuelve una cadena UTF-8 válida. String Ejemplos Ejemplo de uso
Query
SELECT toValidUTF8('\\x61\\xF0\\x80\\x80\\x80b')
Response
c
┌─toValidUTF8('a����b')─┐
│ a�b                   │
└───────────────────────┘

trimBoth

Introducido en: v20.1.0 Elimina los caracteres especificados del principio y del final de una cadena. De forma predeterminada, elimina los caracteres comunes de espacio en blanco (ASCII). Sintaxis
trimBoth(s[, trim_characters])
Alias: trim Argumentos
  • s — Cadena que se recortará. String
  • trim_characters — Opcional. Caracteres que se recortarán. Si no se especifica, se eliminan los caracteres de espacio en blanco habituales. String
Valor devuelto Devuelve la cadena tras recortar los caracteres especificados de ambos extremos. String Ejemplos Ejemplo de uso
Query
SELECT trimBoth('$$ClickHouse$$', '$')
Response
┌─trimBoth('$$⋯se$$', '$')─┐
│ ClickHouse               │
└──────────────────────────┘

trimLeft

Introducido en: v20.1.0 Elimina los caracteres especificados del principio de una cadena. De forma predeterminada, elimina los caracteres de espacio en blanco (ASCII) más comunes. Sintaxis
trimLeft(input[, trim_characters])
Alias: ltrim Argumentos
  • input — Cadena a recortar. String
  • trim_characters — Opcional. Caracteres a recortar. Si no se especifican, se eliminan los caracteres de espacio en blanco habituales. String
Valor devuelto Devuelve la cadena con los caracteres especificados eliminados del extremo izquierdo. String Ejemplos Ejemplo de uso
Query
SELECT trimLeft('ClickHouse', 'Click');
Response
┌─trimLeft('Cl⋯', 'Click')─┐
│ House                    │
└──────────────────────────┘

trimRight

Introducido en: v20.1.0 Elimina los caracteres especificados del final de una cadena. De forma predeterminada, elimina los caracteres comunes de espacios en blanco (ASCII). Sintaxis
trimRight(s[, trim_characters])
Alias: rtrim Argumentos
  • s — Cadena a recortar. String
  • trim_characters — Caracteres opcionales que se eliminarán. Si no se especifican, se eliminan los caracteres de espacio en blanco habituales. String
Valor devuelto Devuelve la cadena con los caracteres especificados eliminados del extremo derecho. String Ejemplos Ejemplo de uso
Query
SELECT trimRight('ClickHouse','House');
Response
┌─trimRight('C⋯', 'House')─┐
│ Click                    │
└──────────────────────────┘

tryBase32Decode

Introducida en: v25.6.0 Acepta una cadena y la decodifica mediante el esquema de codificación Base32. Sintaxis
tryBase32Decode(encoded)
Argumentos
  • encoded — Columna de tipo String o constante que se va a decodificar. Si la cadena no es una codificación Base32 válida, devuelve una cadena vacía en caso de error. String
Valor devuelto Devuelve una cadena que contiene el valor decodificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT tryBase32Decode('IVXGG33EMVSA====');
Response
┌─tryBase32Decode('IVXGG33EMVSA====')─┐
│ Encoded                             │
└─────────────────────────────────────┘

tryBase58Decode

Introducido en: v22.10.0 Igual que base58Decode, pero devuelve una cadena vacía en caso de error. Sintaxis
tryBase58Decode(encoded[, expected_size])
Argumentos
  • encoded — Columna de tipo String o constante. Si la cadena no está codificada en Base58 de forma válida, devuelve una cadena vacía en caso de error. String
  • expected_size — Opcional. Tamaño esperado de la decodificación en bytes. Cuando es 32 o 64, se usa un decodificador optimizado; para otros valores, se usa el decodificador genérico. UInt8, UInt16, UInt32 o UInt64
Valor devuelto Devuelve una cadena que contiene el valor decodificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT tryBase58Decode('3dc8KtHrwM') AS res, tryBase58Decode('invalid') AS res_invalid;
Response
┌─res─────┬─res_invalid─┐
│ Encoded │             │
└─────────┴─────────────┘

tryBase64Decode

Introducido en: v18.16.0 Igual que base64Decode, pero devuelve una cadena vacía en caso de error. Sintaxis
tryBase64Decode(encoded)
Argumentos
  • encoded — Columna o constante de tipo String que se va a decodificar. Si la cadena no está codificada en Base64 de forma válida, devuelve una cadena vacía en caso de error. String
Valor devuelto Devuelve una cadena que contiene el valor decodificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT tryBase64Decode('Y2xpY2tob3VzZQ==')
Response
┌─tryBase64Decode('Y2xpY2tob3VzZQ==')─┐
│ clickhouse                          │
└─────────────────────────────────────┘

tryBase64URLDecode

Introducido en: v18.16.0 Igual que base64URLDecode, pero devuelve una cadena vacía en caso de error. Sintaxis
tryBase64URLDecode(encoded)
Argumentos
  • encoded — columna String o constante que se va a decodificar. Si la cadena no es una codificación Base64 válida, devuelve una cadena vacía en caso de error. String
Valor devuelto Devuelve una cadena que contiene el valor decodificado del argumento. String Ejemplos Ejemplo de uso
Query
SELECT tryBase64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')
Response
┌─tryBase64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')─┐
│ https://clickhouse.com                               │
└──────────────────────────────────────────────────────┘

tryIdnaEncode

Introducido en: v24.1.0 Devuelve la representación Unicode (UTF-8) (algoritmo ToUnicode) de un nombre de dominio según el mecanismo Internationalized Domain Names in Applications (IDNA). En caso de error, devuelve una cadena vacía en lugar de lanzar una excepción. Sintaxis
tryIdnaEncode(s)
Argumentos
  • s — Cadena de entrada. String
Valor devuelto Devuelve una representación ASCII de la cadena de entrada conforme al mecanismo IDNA del valor de entrada, o una cadena vacía si la entrada no es válida. String Ejemplos Ejemplo de uso
Query
SELECT tryIdnaEncode('straße.münchen.de')
Response
┌─tryIdnaEncode('straße.münchen.de')──┐
│ xn--strae-oqa.xn--mnchen-3ya.de     │
└─────────────────────────────────────┘

tryPunycodeDecode

Introducido en: v24.1.0 Como punycodeDecode, pero devuelve una cadena vacía si no se proporciona una cadena codificada en Punycode válida. Sintaxis
tryPunycodeDecode(s)
Argumentos
  • s — Cadena codificada en Punycode. String
Valor devuelto Devuelve el texto plano del valor de entrada, o una cadena vacía si la entrada no es válida. String Ejemplos Ejemplo de uso
Query
SELECT tryPunycodeDecode('Mnchen-3ya')
Response
┌─tryPunycodeDecode('Mnchen-3ya')─┐
│ München                         │
└─────────────────────────────────┘

upper

Introducido en: v1.1.0 Convierte a mayúsculas los caracteres latinos ASCII de una cadena. Sintaxis
upper(s)
Alias: ucase Argumentos
  • s — La cadena que se convertirá a mayúsculas. String
Valor devuelto Devuelve una cadena en mayúsculas a partir de s. String Ejemplos Ejemplo de uso
Query
SELECT upper('clickhouse')
Response
┌─upper('clickhouse')─┐
│ CLICKHOUSE          │
└─────────────────────┘

upperUTF8

Introducido en: v1.1.0 Convierte una cadena a mayúsculas, suponiendo que contiene texto válido codificado en UTF-8. Si no se cumple esta condición, no se lanza ninguna excepción y el resultado es indefinido.
Esta función no detecta el idioma; por ejemplo, en turco, el resultado podría no ser del todo correcto (i/İ vs. i/I). Si la longitud de la secuencia de bytes UTF-8 difiere entre mayúsculas y minúsculas para un punto de código (como y ß), el resultado puede ser incorrecto para ese punto de código.
Sintaxis
upperUTF8(s)
Argumentos
  • s — Un tipo String. String
Valor devuelto Un valor de tipo de dato String. String Ejemplos Ejemplo de uso
Query
SELECT upperUTF8('München') AS Upperutf8
Response
┌─Upperutf8─┐
│ MÜNCHEN   │
└───────────┘
Última modificación el 10 de junio de 2026