As funções para buscar em strings e para substituir em strings são descritas separadamente.
CRC32
Introduzido em: v20.1.0
Calcula o checksum CRC32 de uma string usando o polinômio CRC-32-IEEE 802.3 e o valor inicial 0xffffffff (implementação do zlib).
Sintaxe
CRC32(s)Argumentos
s— String para a qual calcular o CRC32.String
Valor retornado
Retorna o checksum CRC32 da string. UInt32
Exemplos
Exemplo de uso
SELECT CRC32('ClickHouse')┌─CRC32('ClickHouse')─┐
│ 1538217360 │
└─────────────────────┘CRC32IEEE
Introduzido em: v20.1.0
Calcula o checksum CRC32 de uma string usando o polinômio CRC-32-IEEE 802.3.
Sintaxe
CRC32IEEE(s)Argumentos
s— String para a qual calcular o CRC32.String
Valor retornado
Retorna o checksum CRC32 da string. UInt32
Exemplos
Exemplo de uso
SELECT CRC32IEEE('ClickHouse');┌─CRC32IEEE('ClickHouse')─┐
│ 3089448422 │
└─────────────────────────┘CRC64
Introduzido em: v20.1.0
Calcula o checksum CRC64 de uma string usando o polinômio CRC-64-ECMA.
Sintaxe
CRC64(s)Argumentos
s— String para a qual calcular o CRC64.String
Valor retornado
Retorna o checksum CRC64 da string. UInt64
Exemplos
Exemplo de uso
SELECT CRC64('ClickHouse');┌──CRC64('ClickHouse')─┐
│ 12126588151325169346 │
└──────────────────────┘appendTrailingCharIfAbsent
Introduzido em: v1.1.0
Adiciona o caractere c à string s se s não estiver vazia e não terminar com o caractere c.
Sintaxe
appendTrailingCharIfAbsent(s, c)Argumentos
Valor retornado
Retorna a string s com o caractere c acrescentado, caso s não termine com c. String
Exemplos
Exemplo de uso
SELECT appendTrailingCharIfAbsent('https://example.com', '/');┌─appendTrailingCharIfAbsent('https://example.com', '/')─┐
│ https://example.com/ │
└────────────────────────────────────────────────────────┘ascii
Introduzido em: v22.11.0
Retorna o código ASCII do primeiro caractere da string s como um Int32.
Sintaxe
ascii(s)Argumentos
s— Entrada do tipoString.String
Valor retornado
Retorna o ponto de código ASCII do primeiro caractere. Se s estiver vazio, o resultado será 0. Se o primeiro caractere não for um caractere ASCII ou não fizer parte do intervalo suplementar Latin-1 do UTF-16, o resultado será indefinido. Int32
Exemplos
Exemplo de uso
SELECT ascii('234')┌─ascii('234')─┐
│ 50 │
└──────────────┘base32Decode
Introduzido em: v25.6.0
Decodifica uma string em Base32 (RFC 4648). Se a string não estiver codificada em Base32 de forma válida, uma exceção será gerada.
Sintaxe
base32Decode(encoded)Argumentos
encoded— coluna ou constante do tipo String.String
Valor retornado
Retorna uma string contendo o valor decodificado do argumento. String
Exemplos
Exemplo de uso
SELECT base32Decode('IVXGG33EMVSA====');┌─base32Decode('IVXGG33EMVSA====')─┐
│ Encoded │
└──────────────────────────────────┘base32Encode
Introduzido em: v25.6.0
Codifica uma cadeia de caracteres usando Base32.
Sintaxe
base32Encode(plaintext)Argumentos
plaintext— texto simples a ser codificado.String
Valor retornado
Retorna uma string contendo o valor codificado do argumento. String ou FixedString
Exemplos
Exemplo de uso
SELECT base32Encode('Encoded')┌─base32Encode('Encoded')─┐
│ IVXGG33EMVSA==== │
└─────────────────────────┘base58Decode
Introduzido em: v22.7.0
Decodifica uma string em Base58.
Se a string não for uma codificação Base58 válida, uma exceção será lançada.
Um segundo argumento opcional, expected_size, pode ser fornecido para selecionar um decodificador otimizado de tamanho fixo.
No momento, os valores compatíveis são 32 e 64. Para outros valores, o decodificador genérico é usado.
Quando o decodificador otimizado é selecionado, mas a entrada não pode ser decodificada em exatamente essa quantidade de bytes,
a função lança uma exceção (ou retorna uma string vazia para tryBase58Decode).
Sintaxe
base58Decode(encoded[, expected_size])Argumentos
encoded— coluna String ou constante a ser decodificada.Stringexpected_size— Opcional. Tamanho esperado após a decodificação, em bytes. Quando o valor for 32 ou 64, será usado um decodificador otimizado; para outros valores, será usado o decodificador genérico.UInt8, UInt16, UInt32 ou UInt64
Valor retornado
Retorna uma string que contém o valor decodificado do argumento. String
Exemplos
Exemplo de uso
SELECT base58Decode('JxF12TrwUP45BMd');┌─base58Decode('JxF12TrwUP45BMd')─┐
│ Hello World │
└─────────────────────────────────┘base58Encode
Introduzido em: v22.7.0
Codifica uma string usando a codificação Base58.
Sintaxe
base58Encode(plaintext)Argumentos
plaintext— texto simples a ser codificado.String
Valor retornado
Retorna uma string contendo o valor codificado do argumento. String
Exemplos
Exemplo de uso
SELECT base58Encode('ClickHouse');┌─base58Encode('ClickHouse')─┐
│ 4nhk8K7GHXf6zx │
└────────────────────────────┘base64Decode
Introduzido em: v18.16.0
Decodifica uma string em representação Base64, de acordo com a RFC 4648.
Desde a versão 26.7, os caracteres de espaço em branco — espaço, tabulação (\t), quebra de linha (\n), retorno de carro (\r) e avanço de formulário (\f) — na entrada são ignorados (versões anteriores rejeitavam entradas que os continham). A tabulação vertical (\v) e quaisquer outros caracteres fora do alfabeto Base64 são rejeitados.
Lança uma exceção em caso de erro.
Sintaxe
base64Decode(encoded)Aliases: FROM_BASE64
Argumentos
encoded— coluna do tipo String ou constante a ser decodificada. Se a string não for uma codificação Base64 válida, uma exceção será lançada.String
Valor retornado
Retorna a string decodificada. String
Exemplos
Exemplo de uso
SELECT base64Decode('Y2xpY2tob3VzZQ==')┌─base64Decode('Y2xpY2tob3VzZQ==')─┐
│ clickhouse │
└──────────────────────────────────┘base64Encode
Introduzido em: v18.16.0
Codifica uma string na representação Base64, de acordo com a RFC 4648.
Sintaxe
base64Encode(plaintext)Aliases: TO_BASE64
Argumentos
plaintext— Coluna ou constante de texto simples a ser decodificada.String
Valor retornado
Retorna uma string com o valor codificado do argumento. String
Exemplos
Exemplo de uso
SELECT base64Encode('clickhouse')┌─base64Encode('clickhouse')─┐
│ Y2xpY2tob3VzZQ== │
└────────────────────────────┘base64URLDecode
Introduzido em: v24.6.0
Decodifica uma string a partir da representação Base64, usando um alfabeto seguro para URL, de acordo com a RFC 4648.
O alfabeto padrão (+ e /) também é aceito na decodificação.
Desde a versão 26.7, os caracteres de espaço em branco espaço, tab (\t), quebra de linha (\n), retorno de carro (\r) e avanço de formulário (\f) na entrada são ignorados (as versões anteriores rejeitavam entradas que os continham). A tabulação vertical (\v) e quaisquer outros caracteres fora do alfabeto Base64 são rejeitados.
Lança uma exceção em caso de erro.
Sintaxe
base64URLDecode(encoded)Argumentos
encoded— coluna ou constante do tipoStringa ser codificada. Se a string não estiver codificada em Base64 de forma válida, uma exceção será lançada.String
Valor retornado
Retorna uma string que contém o valor decodificado do argumento. String
Exemplos
Exemplo de uso
SELECT base64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')┌─base64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')─┐
│ https://clickhouse.com │
└───────────────────────────────────────────────────┘base64URLEncode
Introduzido na versão: v18.16.0
Codifica uma string usando a representação Base64 (RFC 4648) com um alfabeto seguro para URL.
Sintaxe
base64URLEncode(plaintext)Argumentos
plaintext— Coluna ou constante de texto simples a ser codificada.String
Valor retornado
Retorna uma string contendo o valor codificado do argumento. String
Exemplos
Exemplo de uso
SELECT base64URLEncode('https://clickhouse.com')┌─base64URLEncode('https://clickhouse.com')─┐
│ aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ │
└───────────────────────────────────────────┘basename
Introduzido em: v20.1.0
Extrai a parte final de uma string após a última barra ou barra invertida. Essa função é frequentemente usada para extrair o nome do arquivo de um caminho.
Sintaxe
basename(expr)Argumentos
expr— Uma expressão de string. As barras invertidas devem ser escapadas.String
Valor retornado
Retorna a parte final da string de entrada após a última barra ou barra invertida. Se a string de entrada terminar com uma barra ou barra invertida, a função retornará uma string vazia. Retorna a string original se não houver barras nem barras invertidas. String
Exemplos
Extrair o nome do arquivo de um caminho Unix
SELECT 'some/long/path/to/file' AS a, basename(a)┌─a──────────────────────┬─basename(a)─┐
│ some/long/path/to/file │ file │
└────────────────────────┴─────────────┘Extrair o nome do arquivo de um caminho do Windows
SELECT 'some\\long\\path\\to\\file' AS a, basename(a)┌─a──────────────────────┬─basename(a)─┐
│ some\long\path\to\file │ file │
└────────────────────────┴─────────────┘String sem separadores de caminho
SELECT 'some-file-name' AS a, basename(a)┌─a──────────────┬─basename(a)────┐
│ some-file-name │ some-file-name │
└────────────────┴────────────────┘byteHammingDistance
Introduzido em: v23.9.0
Calcula a distância de Hamming entre duas sequências de bytes.
Sintaxe
byteHammingDistance(s1, s2)Aliases: mismatches
Argumentos
Valor retornado
Retorna a distância de Hamming entre as duas strings. UInt64
Exemplos
Exemplo de uso
SELECT byteHammingDistance('karolin', 'kathrin')┌─byteHammingDistance('karolin', 'kathrin')─┐
│ 3 │
└───────────────────────────────────────────┘caseFoldUTF8
Introduzido em: v26.3.0
Aplica o case folding do Unicode a uma string UTF-8, convertendo-a em uma forma normalizada semelhante a minúsculas, adequada para comparações sem diferenciar maiúsculas de minúsculas.
Aplica o case folding padrão do Unicode. Preserva caracteres de compatibilidade que não são afetados pelo case folding
(por exemplo, algarismos romanos, números circundados), mas observe que algumas ligaturas, como ffi, ainda são decompostas porque o próprio case folding do Unicode as expande.
Sintaxe
caseFoldUTF8(str)Argumentos
str— string de entrada codificada em UTF-8.String
Valor retornado
String UTF-8 com case folding aplicado. String
Exemplos
Case folding básico
SELECT caseFoldUTF8('Straße')┌─caseFoldUTF8('Straße')─┐
│ strasse │
└────────────────────────┘compareSubstrings
Introduzido em: v25.2.0
Compara duas strings em ordem lexicográfica.
Sintaxe
compareSubstrings(s1, s2, s1_offset, s2_offset, num_bytes)Argumentos
s1— A primeira string a ser comparada.Strings2— A segunda string a ser comparada.Strings1_offset— A posição ems1(baseada em zero) a partir da qual a comparação começa.UInt*s2_offset— A posição ems2(índice baseado em zero) a partir da qual a comparação começa.UInt*num_bytes— O número máximo de bytes a serem comparados em ambas as strings. Ses1_offset(ous2_offset) +num_bytesultrapassar o fim de uma string de entrada,num_bytesserá reduzido adequadamente.UInt*
Valor retornado
Retorna:
-1ses1[s1_offset:s1_offset+num_bytes] <s2[s2_offset:s2_offset+num_bytes].0ses1[s1_offset:s1_offset+num_bytes] =s2[s2_offset:s2_offset+num_bytes].1ses1[s1_offset:s1_offset+num_bytes] >s2[s2_offset:s2_offset+num_bytes].Int8
Exemplos
Exemplo de uso
SELECT compareSubstrings('Saxony', 'Anglo-Saxon', 0, 6, 5) AS result┌─result─┐
│ 0 │
└────────┘concat
Introduzido em: v1.1.0
Concatena os argumentos especificados.
Argumentos que não são dos tipos String ou FixedString são convertidos em strings usando a serialização padrão.
Como isso reduz o desempenho, não é recomendável usar argumentos diferentes de String/FixedString.
Sintaxe
concat([s1, s2, ...])Argumentos
s1, s2, ...— Qualquer número de valores de tipo arbitrário.Any
Valor retornado
Retorna a String resultante da concatenação dos argumentos. Se algum dos argumentos for NULL, a função retorna NULL. Se não houver argumentos, retorna uma string vazia. Nullable(String)
Exemplos
Concatenação de strings
SELECT concat('Hello, ', 'World!')┌─concat('Hello, ', 'World!')─┐
│ Hello, World! │
└─────────────────────────────┘Concatenação de números
SELECT concat(42, 144)┌─concat(42, 144)─┐
│ 42144 │
└─────────────────┘concatAssumeInjective
Introduzido em: v1.1.0
Semelhante a concat, mas assume que concat(s1, s2, ...) → sn é injetiva,
ou seja, retorna resultados diferentes para argumentos distintos.
Pode ser usado para otimizar GROUP BY.
Sintaxe
concatAssumeInjective([s1, s2, ...])Argumentos
s1, s2, ...— Qualquer quantidade de valores de tipo arbitrário.StringouFixedString
Valor retornado
Retorna a string criada pela concatenação dos argumentos. Se qualquer um dos valores dos argumentos for NULL, a função retorna NULL. Se nenhum argumento for passado, retorna uma string vazia. String
Exemplos
Otimização de agrupamento
CREATE TABLE key_val (key1 String, key2 String, value UInt32) ENGINE = Memory;
INSERT INTO key_val VALUES ('Hello, ', 'World!', 1), ('Hello, ', 'World!', 2), ('Hello, ', 'World', 3);
SELECT concatAssumeInjective(key1, key2) AS key, sum(value) FROM key_val GROUP BY key ORDER BY key;┌─key───────────┬─sum(value)─┐
│ Hello, World │ 3 │
│ Hello, World! │ 3 │
└───────────────┴────────────┘concatWithSeparator
Introduzido em: v22.12.0
Concatena as strings fornecidas, separando-as com o separador especificado.
Sintaxe
concatWithSeparator(sep[, exp1, exp2, ...])Aliases: concat_ws
Argumentos
sep— O separador a ser usado.const Stringouconst FixedStringexp1, exp2, ...— Expressão a ser concatenada. Argumentos que não são do tipoStringouFixedStringsão convertidos em strings usando a serialização padrão. Como isso reduz o desempenho, não é recomendado usar argumentos diferentes deString/FixedString.Any
Valor retornado
Retorna a String criada pela concatenação dos argumentos. Se qualquer um dos valores dos argumentos for NULL, a função retorna NULL. String
Exemplos
Exemplo de uso
SELECT concatWithSeparator('a', '1', '2', '3', '4')┌─concatWithSeparator('a', '1', '2', '3', '4')─┐
│ 1a2a3a4 │
└──────────────────────────────────────────────┘concatWithSeparatorAssumeInjective
Introduzido em: v22.12.0
Como concatWithSeparator, mas assume que concatWithSeparator(sep[,exp1, exp2, ... ]) → result seja injetiva.
Uma função é considerada injetiva se retornar resultados distintos para argumentos distintos.
Pode ser usada para otimizar GROUP BY.
Sintaxe
concatWithSeparatorAssumeInjective(sep[, exp1, exp2, ... ])Argumentos
sep— O separador a ser usado.const Stringouconst FixedStringexp1, exp2, ...— Expressão a ser concatenada. Argumentos que não são do tipoStringouFixedStringsão convertidos em strings usando a serialização padrão. Como isso reduz o desempenho, não é recomendável usar argumentos diferentes deString/FixedString.StringouFixedString
Valor retornado
Retorna a String criada pela concatenação dos argumentos. Se qualquer um dos valores dos argumentos for NULL, a função retorna NULL. String
Exemplos
Exemplo de uso
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);┌─full_name───┬─total_score─┐
│ Jane-Smith │ 240 │
│ John-Doe │ 100 │
│ John-Wilson │ 120 │
└─────────────┴─────────────┘conv
Introduzido em: v25.10.0
Converte números entre diferentes bases numéricas.
A função converte um número de uma base numérica para outra. Ela oferece suporte a bases de 2 a 36. Para bases maiores que 10, as letras A-Z (sem diferenciar maiúsculas de minúsculas) são usadas para representar os dígitos de 10 a 35.
Esta função é compatível com a função CONV() do MySQL.
Sintaxe
conv(number, from_base, to_base)Argumentos
number— O número a ser convertido. Pode ser uma string ou um tipo numérico. -from_base— A base de origem (2-36). Deve ser um número inteiro. -to_base— A base de destino (2-36). Deve ser um número inteiro.
Valor retornado
Representação em string do número na base de destino.
Exemplos
Converter decimal em binário
SELECT conv('10', 10, 2)1010Converter hexadecimal para decimal
SELECT conv('FF', 16, 10)255Conversão com número negativo
SELECT conv('-1', 10, 16)FFFFFFFFFFFFFFFFConverter binário para octal
SELECT conv('1010', 2, 8)12convertCharset
Introduzido em: v1.1.0
Retorna a string s convertida da codificação from para a codificação to.
Sintaxe
convertCharset(s, from, to)Argumentos
s— String de entrada.Stringfrom— Codificação de caracteres de origem.Stringto— Codificação de caracteres de destino.String
Valor retornado
Retorna a string s, convertida da codificação from para a codificação to. String
Exemplos
Exemplo de uso
SELECT convertCharset('Café', 'UTF-8', 'ISO-8859-1');┌─convertCharset('Café', 'UTF-8', 'ISO-8859-1')─┐
│ Caf� │
└───────────────────────────────────────────────┘damerauLevenshteinDistance
Introduzido em: v24.1.0
Calcula a distância de Damerau-Levenshtein entre duas strings de bytes.
Sintaxe
damerauLevenshteinDistance(s1, s2)Argumentos
Valor retornado
Retorna a distância de Damerau-Levenshtein entre as duas strings. UInt64
Exemplos
Exemplo de uso
SELECT damerauLevenshteinDistance('clickhouse', 'mouse')┌─damerauLevenshteinDistance('clickhouse', 'mouse')─┐
│ 6 │
└───────────────────────────────────────────────────┘decodeHTMLComponent
Introduzido em: v23.9.0
Decodifica entidades HTML em uma string, convertendo-as nos caracteres correspondentes.
Sintaxe
decodeHTMLComponent(s)Argumentos
s— String que contém entidades HTML a serem decodificadas.String
Valor retornado
Retorna a string com as entidades HTML decodificadas. String
Exemplos
Exemplo de uso
SELECT decodeHTMLComponent('<div>Hello & "World"</div>')┌─decodeHTMLComponent('<div>Hello & "World"</div>')─┐
│ <div>Hello & "World"</div> │
└─────────────────────────────────────────────────────────────────────────────┘decodeXMLComponent
Introduzido em: v21.2.0
Decodifica entidades XML em uma string, convertendo-as em seus caracteres correspondentes.
Sintaxe
decodeXMLComponent(s)Argumentos
s— String com entidades XML a serem decodificadas.String
Valor retornado
Retorna a string fornecida com as entidades XML decodificadas. String
Exemplos
Exemplo de uso
SELECT decodeXMLComponent('<tag>Hello & World</tag>')┌─decodeXMLComponent('<tag>Hello & World</tag>')─┐
│ <tag>Hello & World</tag> │
└────────────────────────────────────────────────────────────────┘editDistance
Introduzido em: v23.9.0
Calcula a distância de edição entre duas sequências de bytes.
Sintaxe
editDistance(s1, s2)Aliases: levenshteinDistance
Argumentos
Valor retornado
Retorna a distância de edição entre as duas strings. UInt64
Exemplos
Exemplo de uso
SELECT editDistance('clickhouse', 'mouse')┌─editDistance('clickhouse', 'mouse')─┐
│ 6 │
└─────────────────────────────────────┘editDistanceUTF8
Introduzido em: v24.6.0
Calcula a distância de edição entre duas strings UTF-8.
Sintaxe
editDistanceUTF8(s1, s2)Aliases: levenshteinDistanceUTF8
Argumentos
Valor retornado
Retorna a distância de edição entre as duas strings UTF-8. UInt64
Exemplos
Exemplo de uso
SELECT editDistanceUTF8('我是谁', '我是我') AS distance┌─distance─┐
│ 1 │
└──────────┘encodeXMLComponent
Introduzido em: v21.1.0
Escapa caracteres para inserir uma string em um nó de texto ou em um atributo XML.
Sintaxe
encodeXMLComponent(s)Argumentos
s— String a ser escapada.String
Valor retornado
Retorna a string escapada. String
Exemplos
Exemplo de uso
SELECT
'<tag>Hello & "World"</tag>' AS original,
encodeXMLComponent('<tag>Hello & "World"</tag>') AS xml_encoded;┌─original───────────────────┬─xml_encoded──────────────────────────────────────────┐
│ <tag>Hello & "World"</tag> │ <tag>Hello & "World"</tag> │
└────────────────────────────┴──────────────────────────────────────────────────────┘endsWith
Introduzido em: v1.1.0
Verifica se uma string termina com o sufixo informado.
Sintaxe
endsWith(s, suffix)Argumentos
Valor retornado
Retorna 1 se s terminar com suffix; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT endsWith('ClickHouse', 'House');┌─endsWith('ClickHouse', 'House')─┐
│ 1 │
└─────────────────────────────────┘endsWithCaseInsensitive
Introduzido em: v25.10.0
Verifica se uma string termina com o sufixo fornecido sem diferenciar maiúsculas de minúsculas.
Sintaxe
endsWithCaseInsensitive(s, suffix)Argumentos
s— String a ser verificada.Stringsuffix— Sufixo sem distinção entre maiúsculas e minúsculas a ser verificado.String
Valor retornado
Retorna 1 se s terminar com o suffix sem distinção entre maiúsculas e minúsculas; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT endsWithCaseInsensitive('ClickHouse', 'HOUSE');┌─endsWithCaseInsensitive('ClickHouse', 'HOUSE')─┐
│ 1 │
└────────────────────────────────────────────────┘endsWithCaseInsensitiveUTF8
Introduzido na versão: v25.10.0
Retorna se a string s termina com o suffix, sem diferenciar maiúsculas de minúsculas.
Pressupõe que a string contenha texto válido codificado em UTF-8.
Se essa suposição for violada, nenhuma exceção é lançada e o resultado é indefinido.
Sintaxe
endsWithCaseInsensitiveUTF8(s, suffix)Argumentos
s— String a ser verificada.Stringsuffix— Sufixo, sem distinção entre maiúsculas e minúsculas, a ser verificado.String
Valor retornado
Retorna 1 se s terminar com suffix sem distinção entre maiúsculas e minúsculas; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT endsWithCaseInsensitiveUTF8('данных', 'ых');┌─endsWithCaseInsensitiveUTF8('данных', 'ых')─┐
│ 1 │
└─────────────────────────────────────────────┘endsWithUTF8
Introduzido em: v23.8.0
Retorna se a string s termina com suffix.
Pressupõe que a string contenha texto válido codificado em UTF-8.
Se essa suposição for violada, nenhuma exceção é lançada e o resultado é indefinido.
Sintaxe
endsWithUTF8(s, suffix)Argumentos
Valor retornado
Retorna 1 se s terminar com suffix; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT endsWithUTF8('данных', 'ых');┌─endsWithUTF8('данных', 'ых')─┐
│ 1 │
└──────────────────────────────┘extractTextFromHTML
Introduzido em: v21.3.0
Extrai conteúdo textual de HTML ou XHTML.
Esta função remove tags HTML, comentários e elementos script/style, deixando apenas o conteúdo textual. Ela faz o seguinte:
- Remove todas as tags HTML/XML
- Remove comentários (
{/* */}) - Remove elementos
scriptestylecom seu conteúdo - Processa seções CDATA (copiadas literalmente)
- Trata e normaliza adequadamente os espaços em branco
Observação: entidades HTML não são decodificadas e devem ser processadas com uma função separada, se necessário.
Sintaxe
extractTextFromHTML(html)Argumentos
html—Stringque contém o conteúdo HTML do qual o texto será extraído.String
Valor retornado
Retorna o conteúdo de texto extraído com os espaços em branco normalizados. String
Exemplos
Exemplo de uso
SELECT extractTextFromHTML('
<html>
<head><title>Page Title</title></head>
<body>
<p>Hello <b>World</b>!</p>
<script>alert("test");</script>
<!-- comment -->
</body>
</html>
');┌─extractTextFromHTML('\n<html>\n <head><title>Page Title</title></head>\n <body>\n <p>Hello <b>World</b>!</p>\n <script>alert("test");</script>\n <!-- comment -->\n </body>\n</html>\n')─┐
│ Page Title Hello World ! │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘firstLine
Introduzido em: v23.7.0
Retorna a primeira linha de uma string multilinha.
Sintaxe
firstLine(s)Argumentos
s— String de entrada.String
Valor retornado
Retorna a primeira linha da string de entrada ou a string inteira, se não houver separadores de linha. String
Exemplos
Exemplo de uso
SELECT firstLine('foo\\nbar\\nbaz')┌─firstLine('foo\\nbar\\nbaz')─┐
│ foo\nbar\nbaz │
└──────────────────────────────┘idnaDecode
Introduzido em: v24.1.0
Retorna a representação Unicode (UTF-8) (algoritmo ToUnicode) de um nome de domínio de acordo com o mecanismo Internationalized Domain Names in Applications (IDNA).
Em caso de erro (por exemplo, se a entrada for inválida), a string de entrada é retornada.
Observe que aplicar idnaEncode() e idnaDecode() repetidamente não necessariamente retorna a string original devido à normalização de maiúsculas e minúsculas.
Sintaxe
idnaDecode(s)Argumentos
s— String de entrada.String
Valor retornado
Retorna uma representação Unicode (UTF-8) da string de entrada, de acordo com o mecanismo IDNA do valor de entrada. String
Exemplos
Exemplo de uso
SELECT idnaDecode('xn--strae-oqa.xn--mnchen-3ya.de')┌─idnaDecode('xn--strae-oqa.xn--mnchen-3ya.de')─┐
│ straße.münchen.de │
└───────────────────────────────────────────────┘idnaEncode
Introduzido em: v24.1.0
Retorna a representação ASCII (algoritmo ToASCII) de um nome de domínio de acordo com o mecanismo Internationalized Domain Names in Applications (IDNA). A string de entrada deve estar codificada em UTF e ser convertível em uma string ASCII; caso contrário, uma exceção é lançada.
Sintaxe
idnaEncode(s)Argumentos
s— String de entrada.String
Valor retornado
Retorna uma representação ASCII da string de entrada de acordo com o mecanismo IDNA do valor de entrada. String
Exemplos
Exemplo de uso
SELECT idnaEncode('straße.münchen.de')┌─idnaEncode('straße.münchen.de')─┐
│ xn--strae-oqa.xn--mnchen-3ya.de │
└─────────────────────────────────┘initcap
Introduzido na versão: v23.7.0
Converte a primeira letra de cada palavra em maiúscula e o restante em minúsculas. As palavras são sequências de caracteres alfanuméricos separadas por caracteres não alfanuméricos.
Sintaxe
initcap(s)Argumentos
s— String de entrada.String
Valor retornado
Retorna s com a primeira letra de cada palavra convertida em maiúscula. String
Exemplos
Exemplo de uso
SELECT initcap('building for fast')┌─initcap('building for fast')─┐
│ Building For Fast │
└──────────────────────────────┘Exemplo de comportamento conhecido para palavras com apóstrofos ou letras maiúsculas
SELECT initcap('John''s cat won''t eat.');┌─initcap('John\'s cat won\'t eat.')─┐
│ John'S Cat Won'T Eat. │
└────────────────────────────────────┘initcapUTF8
Introduzido em: v23.7.0
Assim como initcap, initcapUTF8 converte a primeira letra de cada palavra em maiúscula e as demais em minúscula.
Pressupõe que a string contenha texto válido codificado em UTF-8.
Se essa suposição for violada, nenhuma exceção é lançada e o resultado é indefinido.
Sintaxe
initcapUTF8(s)Argumentos
s— string de entrada.String
Valor retornado
Retorna s com a primeira letra de cada palavra convertida em maiúscula. String
Exemplos
Exemplo de uso
SELECT initcapUTF8('не тормозит')┌─initcapUTF8('не тормозит')─┐
│ Не Тормозит │
└────────────────────────────┘isValidASCII
Introduzido em: v25.9.0
Retorna 1 se a String ou FixedString de entrada contiver apenas bytes ASCII (0x00–0x7F); caso contrário, retorna 0. Otimizado para o caso positivo (a entrada é ASCII válido).
Sintaxe
isValidASCII(str)Aliases: isASCII
Argumentos
- Nenhum.
Valor retornado
Exemplos
isValidASCII
SELECT isValidASCII('hello') AS is_ascii, isValidASCII('你好') AS is_not_ascii┌─is_ascii─┬─is_not_ascii─┐
│ 1 │ 0 │
└──────────┴──────────────┘isValidUTF8
Introduzido em: v20.1.0
Verifica se o conjunto de bytes forma um texto válido codificado em UTF-8.
Sintaxe
isValidUTF8(s)Argumentos
s— A string cuja validade da codificação UTF-8 será verificada.String
Valor retornado
Retorna 1 se o conjunto de bytes constituir um texto válido codificado em UTF-8; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT isValidUTF8('\\xc3\\xb1') AS valid, isValidUTF8('\\xc3\\x28') AS invalid┌─valid─┬─invalid─┐
│ 1 │ 1 │
└───────┴─────────┘jaroSimilarity
Introduzido em: v24.1.0
Calcula a similaridade de Jaro entre duas sequências de bytes.
Sintaxe
jaroSimilarity(s1, s2)Argumentos
Valor retornado
Retorna a similaridade de Jaro entre as duas strings. Float64
Exemplos
Exemplo de uso
SELECT jaroSimilarity('clickhouse', 'click')┌─jaroSimilarity('clickhouse', 'click')─┐
│ 0.8333333333333333 │
└───────────────────────────────────────┘jaroWinklerSimilarity
Introduzido em: v24.1.0
Calcula a similaridade de Jaro-Winkler entre duas sequências de bytes.
Sintaxe
jaroWinklerSimilarity(s1, s2)Argumentos
Valor retornado
Retorna a similaridade de Jaro-Winkler entre as duas strings. Float64
Exemplos
Exemplo de uso
SELECT jaroWinklerSimilarity('clickhouse', 'click')┌─jaroWinklerSimilarity('clickhouse', 'click')─┐
│ 0.8999999999999999 │
└──────────────────────────────────────────────┘left
Introduzido em: v22.1.0
Retorna uma substring da string s com um offset especificado a partir da esquerda.
Sintaxe
left(s, offset)Argumentos
s— A string da qual será calculada uma substring.StringouFixedStringoffset— O número de bytes do deslocamento.(U)Int*
Valor retornado
Retorna:
- Para
offsetpositivo, uma substring descomoffsetbytes, começando à esquerda da string. - Para
offsetnegativo, uma substring descomlength(s) - |offset|bytes, começando à esquerda da string. - Uma string vazia se
lengthfor0.String
Exemplos
Deslocamento positivo
SELECT left('Hello World', 5)HelloOffset negativo
SELECT left('Hello World', -6)HelloleftPad
Introduzido na versão: v21.8.0
Preenche uma string à esquerda com espaços ou com uma string especificada (repetida várias vezes, se necessário) até que a string resultante atinja o length especificado.
Sintaxe
leftPad(string, length[, pad_string])Aliases: lpad
Argumentos
string— String de entrada a ser preenchida.Stringlength— O comprimento da string resultante. Se o valor for menor que o comprimento da string de entrada, a string de entrada será truncada paralengthcaracteres.(U)Int*pad_string— Opcional. A string usada para preencher a string de entrada. Se não for especificada, a string de entrada será preenchida com espaços.String
Valor retornado
Retorna uma string preenchida à esquerda com o comprimento especificado. String
Exemplos
Exemplo de uso
SELECT leftPad('abc', 7, '*'), leftPad('def', 7)┌─leftPad('abc', 7, '*')─┬─leftPad('def', 7)─┐
│ ****abc │ def │
└────────────────────────┴───────────────────┘leftPadUTF8
Introduzido na: v21.8.0
Preenche uma string UTF-8 à esquerda com espaços ou com uma string especificada (repetida várias vezes, se necessário) até que a string resultante atinja o comprimento especificado.
Ao contrário de leftPad, que mede o comprimento da string em bytes, aqui o comprimento da string é medido em pontos de código.
Sintaxe
leftPadUTF8(string, length[, pad_string])Argumentos
string— String de entrada que deve ser preenchida.Stringlength— O comprimento da string resultante. Se o valor for menor que o comprimento da string de entrada, a string de entrada será truncada paralengthcaracteres.(U)Int*pad_string— Opcional. A string usada para preencher a string de entrada. Se não for especificada, a string de entrada será preenchida com espaços.String
Valor retornado
Retorna uma string preenchida à esquerda com o comprimento especificado. String
Exemplos
Exemplo de uso
SELECT leftPadUTF8('абвг', 7, '*'), leftPadUTF8('дежз', 7)┌─leftPadUTF8('абвг', 7, '*')─┬─leftPadUTF8('дежз', 7)─┐
│ ***абвг │ дежз │
└─────────────────────────────┴────────────────────────┘leftUTF8
Introduzido em: v22.1.0
Retorna uma substring da string s codificada em UTF-8, com um offset especificado, a partir da esquerda.
Sintaxe
leftUTF8(s, offset)Argumentos
s— A string codificada em UTF-8 da qual será extraída uma substring.StringouFixedStringoffset— O deslocamento em bytes.(U)Int*
Valor retornado
Retorna:
- Para
offsetpositivo, uma substring descomoffsetbytes, começando a partir da esquerda da string.\n" - Para
offsetnegativo, uma substring descomlength(s) - |offset|bytes, começando a partir da esquerda da string.\n" - Uma string vazia se
lengthfor 0.String
Exemplos
Offset positivo
SELECT leftUTF8('Привет', 4)ПривOFFSET negativo
SELECT leftUTF8('Привет', -4)ПрlengthUTF8
Introduzido em: v1.1.0
Retorna o tamanho de uma string em pontos de código Unicode, em vez de em bytes ou caracteres.
Para calcular o tamanho de uma string em bytes, use a função length.
Supõe que a string contenha texto válido codificado em UTF-8.
Se essa suposição for violada, nenhuma exceção é lançada, e o resultado é indefinido.
Sintaxe
lengthUTF8(s)Aliases: CHARACTER_LENGTH, CHAR_LENGTH
Argumentos
s— String que contém texto válido codificado em UTF-8.String
Valor retornado
Comprimento da string s em pontos de código Unicode. UInt64
Exemplos
Exemplo de uso
SELECT lengthUTF8('Здравствуй, мир!')┌─lengthUTF8('Здравствуй, мир!')─┐
│ 16 │
└────────────────────────────────┘lower
Introduzido em: v1.1.0
Converte uma cadeia de caracteres ASCII em minúsculas.
Sintaxe
lower(s)Aliases: lcase
Argumentos
s— Uma string a ser convertida para minúsculas.String
Valor retornado
Retorna s em minúsculas. String
Exemplos
Exemplo de uso
SELECT lower('CLICKHOUSE')┌─lower('CLICKHOUSE')─┐
│ clickhouse │
└─────────────────────┘lowerUTF8
Introduzido em: v1.1.0
Converte uma string para minúsculas, assumindo que ela contém texto válido codificado em UTF-8. Se essa suposição for violada, nenhuma exceção será lançada e o resultado será indefinido.
Sintaxe
lowerUTF8(input)Argumentos
input— String de entrada a ser convertida em minúsculas.String
Valor retornado
Retorna uma string em minúsculas. String
Exemplos
primeiro
SELECT lowerUTF8('München') as Lowerutf8;münchennaturalSortKey
Introduzido em: v26.3.0
A função é usada para ordenação natural.
Sintaxe
naturalSortKey(s)Aliases: NATURAL_SORT_KEY
Argumentos
s— Uma string a ser convertida em uma chave de ordenação natural.String
Valor retornado
Retorna uma string de chave de ordenação natural a partir de s. String
Exemplos
Exemplo de uso
CREATE TABLE t (s String) ENGINE = Memory;
INSERT INTO t VALUES ('a1'), ('a02');
SELECT s FROM t ORDER BY naturalSortKey(s);┌─s───┐
│ a1 │
│ a02 │
└─────┘normalizeUTF8NFC
Introduzido em: v21.11.0
Normaliza uma string UTF-8 de acordo com a forma de normalização NFC.
Sintaxe
normalizeUTF8NFC(str)Argumentos
str— string de entrada codificada em UTF-8.String
Valor retornado
Retorna a forma normalizada NFC da string UTF-8. String
Exemplos
Exemplo de uso
SELECT
'é' AS original, -- e + acento agudo combinado (U+0065 + U+0301)
length(original),
normalizeUTF8NFC('é') AS nfc_normalized, -- é (U+00E9)
length(nfc_normalized);┌─original─┬─length(original)─┬─nfc_normalized─┬─length(nfc_normalized)─┐
│ é │ 2 │ é │ 2 │
└──────────┴──────────────────┴────────────────┴────────────────────────┘normalizeUTF8NFD
Introduzido em: v21.11.0
Normaliza uma string UTF-8 de acordo com a forma de normalização NFD.
Sintaxe
normalizeUTF8NFD(str)Argumentos
str— string de entrada codificada em UTF-8.String
Valor retornado
Retorna a forma normalizada em NFD da string UTF-8. String
Exemplos
Exemplo de uso
SELECT
'é' AS original, -- é (U+00E9)
length(original),
normalizeUTF8NFD('é') AS nfd_normalized, -- e + acento agudo combinante (U+0065 + U+0301)
length(nfd_normalized);┌─original─┬─length(original)─┬─nfd_normalized─┬─length(nfd_normalized)─┐
│ é │ 2 │ é │ 3 │
└──────────┴──────────────────┴────────────────┴────────────────────────┘normalizeUTF8NFKC
Introduzido em: v21.11.0
Normaliza uma string UTF-8 segundo a forma de normalização NFKC.
Sintaxe
normalizeUTF8NFKC(str)Argumentos
str— string de entrada codificada em UTF-8.String
Valor retornado
Retorna a forma normalizada em NFKC da string UTF-8. String
Exemplos
Exemplo de uso
SELECT
'① ② ③' AS original, -- Circled number characters
normalizeUTF8NFKC('① ② ③') AS nfkc_normalized -- Converts to 1 2 3┌─original─┬─nfkc_normalized─┐
│ ① ② ③ │ 1 2 3 │
└──────────┴─────────────────┘normalizeUTF8NFKCCasefold
Introduzido em: v26.3.0
Normaliza uma string UTF-8 de acordo com a forma de normalização NFKC_Casefold, que aplica a normalização NFKC e, em seguida, o case folding. Isso é útil para comparação sem diferenciar maiúsculas de minúsculas de identificadores.
Sintaxe
normalizeUTF8NFKCCasefold(str)Argumentos
str— string de entrada codificada em UTF-8.String
Valor retornado
Retorna a forma normalizada NFKC_Casefold da string em UTF-8. String
Exemplos
Exemplo de uso
SELECT
'Ä ① Hello' AS original,
normalizeUTF8NFKCCasefold('Ä ① Hello') AS nfkc_cf_normalized;┌─original──┬─nfkc_cf_normalized─┐
│ Ä ① Hello │ ä 1 hello │
└───────────┴────────────────────┘normalizeUTF8NFKD
Introduzido em: v21.11.0
Normaliza uma string UTF-8 de acordo com a forma de normalização NFKD.
Sintaxe
normalizeUTF8NFKD(str)Argumentos
str— String de entrada codificada em UTF-8.String
Valor retornado
Retorna a forma normalizada em NFKD da string UTF-8. String
Exemplos
Exemplo de uso
SELECT
'H₂O²' AS original, -- H + subscript 2 + O + superscript 2
normalizeUTF8NFKD('H₂O²') AS nfkd_normalized -- Converts to H 2 O 2┌─original─┬─nfkd_normalized─┐
│ H₂O² │ H2O2 │
└──────────┴─────────────────┘punycodeDecode
Introduzido em: v24.1.0
Retorna o plaintext codificado em UTF-8 de uma string codificada em Punycode. Se nenhuma string codificada em Punycode válida for fornecida, uma exceção será lançada.
Sintaxe
punycodeDecode(s)Argumentos
s— String codificada em Punycode.String
Valor retornado
Retorna o texto em claro do valor de entrada. String
Exemplos
Exemplo de uso
SELECT punycodeDecode('Mnchen-3ya')┌─punycodeDecode('Mnchen-3ya')─┐
│ München │
└──────────────────────────────┘punycodeEncode
Introduzido em: v24.1.0
Retorna a representação em Punycode de uma string. A string deve estar codificada em UTF8; caso contrário, o comportamento é indefinido.
Sintaxe
punycodeEncode(s)Argumentos
s— Valor de entrada.String
Valor retornado
Retorna uma representação em Punycode do valor de entrada. String
Exemplos
Exemplo de uso
SELECT punycodeEncode('München')┌─punycodeEncode('München')─┐
│ Mnchen-3ya │
└───────────────────────────┘regexpExtract
Introduzido em: v23.2.0
Extrai a primeira string de haystack que corresponde ao padrão da expressão regular e ao índice do grupo da regex.
Sintaxe
regexpExtract(haystack, pattern[, index])Aliases: REGEXP_EXTRACT, REGEXP_SUBSTR
Argumentos
haystack— String na qual será feita a correspondência com o padrão regexp.Stringpattern— String, expressão regexp.patternpode conter vários grupos regexp;indexindica qual grupo regex extrair. Um índice de0significa corresponder à expressão regular inteira.const Stringindex— Opcional. Um número inteiro não negativo que indica qual grupo regex extrair. O padrão é1sepatterncontiver pelo menos um grupo de captura, e0(a correspondência inteira) sepatternnão tiver grupo de captura.(U)Int*
Valor retornado
Retorna a correspondência como uma string String
Exemplos
Exemplo de uso
SELECT
regexpExtract('100-200', '(\\d+)-(\\d+)', 1),
regexpExtract('100-200', '(\\d+)-(\\d+)', 2),
regexpExtract('100-200', '(\\d+)-(\\d+)', 0),
regexpExtract('100-200', '(\\d+)-(\\d+)'),
regexpExtract('100-200', '\\d+');┌─regexpExtract('100-200', '(\\d+)-(\\d+)', 1)─┬─regexpExtract('100-200', '(\\d+)-(\\d+)', 2)─┬─regexpExtract('100-200', '(\\d+)-(\\d+)', 0)─┬─regexpExtract('100-200', '(\\d+)-(\\d+)')─┬─regexpExtract('100-200', '\\d+')─┐
│ 100 │ 200 │ 100-200 │ 100 │ 100 │
└──────────────────────────────────────────────┴──────────────────────────────────────────────┴──────────────────────────────────────────────┴───────────────────────────────────────────┴──────────────────────────────────┘regexpPosition
Introduzido em: v26.5.0
Retorna a posição em bytes (indexada em 1) da occurrence-ésima correspondência de pattern em haystack, iniciando a busca na posição de byte position.
Se return_option for 0 (padrão), retorna a posição do primeiro byte da correspondência. Se for 1, retorna a posição do primeiro byte após a correspondência.
Se subexpression for maior que 0, retorna a posição do grupo de captura correspondente em vez da correspondência completa.
Retorna 0 se nenhuma correspondência for encontrada ou se o grupo de captura solicitado não tiver participado da correspondência.
Fornecido para compatibilidade com o regexp_instr do PostgreSQL (também exposto com esse alias). Observe que as posições são baseadas em bytes, em linha com outras funções de regex do ClickHouse; o regexp_instr do PostgreSQL é baseado em caracteres.
Sintaxe
regexpPosition(haystack, pattern[, position[, occurrence[, return_option[, flags[, subexpression]]]]])Aliases: regexpInstr, regexp_instr
Argumentos
haystack— String na qual pesquisar.Stringpattern— Padrão da expressão regular.const Stringposition— Opcional. Posição em bytes, baseada em 1, para iniciar a busca. Padrão: 1.(U)Int*occurrence— Opcional. Qual ocorrência retornar. Padrão: 1.(U)Int*return_option— Opcional. 0 retorna a posição do início da correspondência; 1 retorna a posição logo após a correspondência. Padrão: 0.(U)Int*flags— Opcional. Flags de regex. Suportadas:i(sem diferenciar maiúsculas de minúsculas),c(diferenciando maiúsculas de minúsculas),m/n(âncoras multilinha),s(o ponto corresponde a nova linha). Padrão: string vazia.const Stringsubexpression— Opcional. Índice do grupo de captura cuja posição deve ser retornada. 0 significa a correspondência inteira. Padrão: 0.(U)Int*
Valor retornado
Retorna a posição em bytes da correspondência ou 0, se não for encontrada. UInt64
Exemplos
Uso básico
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);┌─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)─┐
│ 7 │ 4 │ 5 │ 7 │ 10 │
└────────────────────────────────────────┴──────────────────────────────────────┴─────────────────────────────────────────┴──────────────────────────────────────────────────────┴────────────────────────────────────────────────────────────────────┘removeDiacriticsUTF8
Introduzido em: v26.3.0
Remove marcas diacríticas (acentos) de uma string UTF-8 ao decompor caracteres via NFD, remover marcas de combinação (categoria Unicode Mn) e, em seguida, recompô-los via NFC.
Sintaxe
removeDiacriticsUTF8(str)Aliases: removeAccentsUTF8
Argumentos
str— string de entrada codificada em UTF-8.String
Valor retornado
String em UTF-8 sem diacríticos. String
Exemplos
Remoção básica de acentos
SELECT removeDiacriticsUTF8('café résumé naïve')┌─removeDiacriticsUTF8('café résumé naïve')─┐
│ cafe resume naive │
└───────────────────────────────────────────┘repeat
Introduzido em: v20.1.0
Concatena uma string a ela mesma o número de vezes especificado.
Sintaxe
repeat(s, n)Argumentos
Valor retornado
Uma string que contém s repetida n vezes. Se n for negativo, a função retorna uma string vazia. String
Exemplos
Exemplo de uso
SELECT repeat('abc', 10)┌─repeat('abc', 10)──────────────┐
│ abcabcabcabcabcabcabcabcabcabc │
└────────────────────────────────┘reverseUTF8
Introduzido em: v1.1.0
Inverte uma sequência de pontos de código Unicode em uma string. Pressupõe que a string contenha texto válido codificado em UTF-8. Se essa suposição for violada, não é lançada nenhuma exceção e o resultado é indefinido.
Sintaxe
reverseUTF8(s)Argumentos
s— String que contém texto codificado em UTF-8 válido.String
Valor retornado
Retorna uma string com a sequência de pontos de código Unicode invertida. String
Exemplos
Exemplo de uso
SELECT reverseUTF8('ClickHouse')esuoHkcilCright
Introduzido em: v22.1.0
Retorna uma substring da string s, com o offset especificado, a partir da direita.
Sintaxe
right(s, offset)Argumentos
s— A string da qual será extraída umasubstring.StringouFixedStringoffset— A quantidade de bytes do deslocamento.(U)Int*
Valor retornado
Retorna:
- Para
offsetpositivo, umasubstringdescomoffsetbytes, a partir da direita da string. - Para
offsetnegativo, umasubstringdescomlength(s) - |offset|bytes, a partir da direita da string. - Uma string vazia se
lengthfor0.String
Exemplos
Deslocamento positivo
SELECT right('Hello', 3)lloOffset negativo
SELECT right('Hello', -3)lorightPad
Introduzido em: v21.8.0
Preenche uma string à direita com espaços ou com uma string especificada (repetida várias vezes, se necessário) até que a string resultante atinja o length especificado.
Sintaxe
rightPad(string, length[, pad_string])Aliases: rpad
Argumentos
string— String de entrada que deve ser preenchida.Stringlength— O comprimento da string resultante. Se o valor for menor que o comprimento da string de entrada, a string de entrada será truncada paralengthcaracteres.(U)Int*pad_string— Opcional. A string usada para preencher a string de entrada. Se não for especificada, a string de entrada será preenchida com espaços.String
Valor retornado
Retorna uma string preenchida à direita com o comprimento especificado. String
Exemplos
Exemplo de uso
SELECT rightPad('abc', 7, '*'), rightPad('abc', 7)┌─rightPad('abc', 7, '*')─┬─rightPad('abc', 7)─┐
│ abc**** │ abc │
└─────────────────────────┴────────────────────┘rightPadUTF8
Introduzido na versão: v21.8.0
Preenche a string à direita com espaços ou com uma string especificada (repetida várias vezes, se necessário) até que a string resultante atinja o comprimento informado.
Diferentemente de rightPad, que mede o comprimento da string em bytes, aqui o comprimento da string é medido em pontos de código.
Sintaxe
rightPadUTF8(string, length[, pad_string])Argumentos
string— String de entrada que deve ser preenchida.Stringlength— O comprimento da string resultante. Se o valor for menor que o comprimento da string de entrada, a string de entrada será truncada paralengthcaracteres.(U)Int*pad_string— Opcional. A string usada para preencher a string de entrada. Se não for especificada, a string de entrada será preenchida com espaços.String
Valor retornado
Retorna uma string preenchida à direita com o comprimento informado. String
Exemplos
Exemplo de uso
SELECT rightPadUTF8('абвг', 7, '*'), rightPadUTF8('абвг', 7)┌─rightPadUTF8('абвг', 7, '*')─┬─rightPadUTF8('абвг', 7)─┐
│ абвг*** │ абвг │
└──────────────────────────────┴─────────────────────────┘rightUTF8
Introduzido na versão: v22.1.0
Retorna uma substring da string codificada em UTF-8 s, com um offset especificado a partir da direita.
Sintaxe
rightUTF8(s, offset)Argumentos
s— A string codificada em UTF-8 da qual uma substring será calculada.StringouFixedStringoffset— O número de bytes do deslocamento.(U)Int*
Valor retornado
Retorna:
- Para
offsetpositivo, uma substring descomoffsetbytes, começando pela direita da string. - Para
offsetnegativo, uma substring descomlength(s) - |offset|bytes, começando pela direita da string. - Uma string vazia se
lengthfor0.String
Exemplos
Deslocamento positivo
SELECT rightUTF8('Привет', 4)иветOFFSET negativo
SELECT rightUTF8('Привет', -4)етsoundex
Introduzido em: v23.4.0
Retorna o código Soundex de uma cadeia de caracteres.
Sintaxe
soundex(s)Argumentos
s— Cadeia de caracteres de entrada.String
Valor retornado
Retorna o código Soundex da cadeia de caracteres de entrada. String
Exemplos
Exemplo de uso
SELECT soundex('aksel')┌─soundex('aksel')─┐
│ A240 │
└──────────────────┘space
Introduzido em: v23.5.0
Concatena um espaço ( ) consigo mesmo o número de vezes especificado.
Sintaxe
space(n)Argumentos
n— O número de vezes que o espaço deve ser repetido.(U)Int*
Valor retornado
Retorna uma string contendo um espaço repetido n vezes. Se n <= 0, a função retorna uma string vazia. String
Exemplos
Exemplo de uso
SELECT space(3) AS res, length(res);┌─res─┬─length(res)─┐
│ │ 3 │
└─────┴─────────────┘sparseGrams
Introduzido em: v25.5.0
Encontra todas as substrings de uma string com comprimento de pelo menos n,
em que os hashes dos (n-1)-gramas nas extremidades da substring
são estritamente maiores do que os de qualquer (n-1)-grama dentro da substring.
Usa CRC32 como função de hash.
Sintaxe
sparseGrams(s[, min_ngram_length[, max_ngram_length[, min_cutoff_length]]])Argumentos
s— Uma string de entrada.Stringmin_ngram_length— Opcional. O comprimento mínimo do n-grama extraído. O valor padrão e mínimo é 3.UInt*max_ngram_length— Opcional. O comprimento máximo do n-grama extraído. O valor padrão é 100. Não deve ser menor quemin_ngram_length.UInt*min_cutoff_length— Opcional. Se especificado, apenas n-gramas com comprimento maior ou igual amin_cutoff_lengthsão retornados. O valor padrão é o mesmo demin_ngram_length. Não deve ser menor quemin_ngram_lengthnem maior quemax_ngram_length.UInt*
Valor retornado
Retorna um array das substrings selecionadas. Array(String)
Exemplos
Exemplo de uso
SELECT sparseGrams('alice', 3)┌─sparseGrams('alice', 3)────┐
│ ['ali','lic','ice','lice'] │
└────────────────────────────┘sparseGramsHashes
Introduzido em: v25.5.0
Retorna os hashes de todas as substrings de uma determinada string com comprimento de pelo menos n,
em que os hashes dos (n-1)-gramas nas bordas da substring
são estritamente maiores do que os de qualquer (n-1)-grama dentro da substring.
Usa CRC32 como função de hash.
Sintaxe
sparseGramsHashes(s[, min_ngram_length, max_ngram_length])Argumentos
s— Uma string de entrada.Stringmin_ngram_length— Opcional. O comprimento mínimo do n-grama extraído. O valor padrão e mínimo é 3.UInt*max_ngram_length— Opcional. O comprimento máximo do n-grama extraído. O valor padrão é 100. Não deve ser menor quemin_ngram_length.UInt*min_cutoff_length— Opcional. Se especificado, apenas n-gramas com comprimento maior ou igual amin_cutoff_lengthsão retornados. O valor padrão é o mesmo demin_ngram_length. Não deve ser menor quemin_ngram_lengthnem maior quemax_ngram_length.UInt*
Valor retornado
Retorna um array de hashes CRC32 das substrings selecionadas. Array(UInt32)
Exemplos
Exemplo de uso
SELECT sparseGramsHashes('alice', 3)┌─sparseGramsHashes('alice', 3)────────────────┐
│ [3851133533,3120039944,646693941,2577359366] │
└──────────────────────────────────────────────┘sparseGramsHashesUTF8
Introduzido em: v25.5.0
Encontra os hashes de todas as substrings de uma determinada string UTF-8 com comprimento de pelo menos n, em que os hashes dos (n-1)-gramas nas bordas da substring são estritamente maiores do que os de qualquer (n-1)-grama no interior da substring.
Espera uma string UTF-8 e lança uma exceção em caso de sequência UTF-8 inválida.
Usa CRC32 como função de hash.
Sintaxe
sparseGramsHashesUTF8(s[, min_ngram_length, max_ngram_length])Argumentos
s— Uma string de entrada.Stringmin_ngram_length— Opcional. O comprimento mínimo do n-grama extraído. O valor padrão e mínimo é 3.UInt*max_ngram_length— Opcional. O comprimento máximo do n-grama extraído. O valor padrão é 100. Não deve ser menor quemin_ngram_length.UInt*min_cutoff_length— Opcional. Se especificado, retorna apenas n-gramas com comprimento maior ou igual amin_cutoff_length. O valor padrão é o mesmo demin_ngram_length. Não deve ser menor quemin_ngram_lengthnem maior quemax_ngram_length.UInt*
Valor retornado
Retorna um array com os hashes CRC32 das substrings UTF-8 selecionadas. Array(UInt32)
Exemplos
Exemplo de uso
SELECT sparseGramsHashesUTF8('алиса', 3)┌─sparseGramsHashesUTF8('алиса', 3)───────────────────────┐
│ [1328958118,547287748,4155892324,2403052185,1673399070] │
└─────────────────────────────────────────────────────────┘sparseGramsUTF8
Introduzido em: v25.5.0
Encontra todas as substrings de uma determinada string UTF-8 com comprimento de pelo menos n, em que os hashes dos (n-1)-gramas nas bordas da substring são estritamente maiores do que os de qualquer (n-1)-grama dentro dela.
Aceita uma string UTF-8 e lança uma exceção em caso de sequência UTF-8 inválida.
Usa CRC32 como função de hash.
Sintaxe
sparseGramsUTF8(s[, min_ngram_length[, max_ngram_length[, min_cutoff_length]]])Argumentos
s— Uma string de entrada.Stringmin_ngram_length— Opcional. O comprimento mínimo do ngrama extraído. O valor padrão e mínimo é 3.UInt*max_ngram_length— Opcional. O comprimento máximo do ngrama extraído. O valor padrão é 100. Não deve ser menor quemin_ngram_length.UInt*min_cutoff_length— Opcional. Se especificado, somente n-gramas com comprimento maior ou igual amin_cutoff_lengthsão retornados. O valor padrão é o mesmo demin_ngram_length. Não deve ser menor quemin_ngram_lengthnem maior quemax_ngram_length.UInt*
Valor retornado
Retorna um array das substrings em UTF-8 selecionadas. Array(String)
Exemplos
Exemplo de uso
SELECT sparseGramsUTF8('алиса', 3)┌─sparseGramsUTF8('алиса', 3)────────┐
│ ['али','лис','иса','лиса','алиса'] │
└────────────────────────────────────┘startsWith
Introduzido em: v1.1.0
Verifica se uma string começa com a sequência de caracteres fornecida.
Sintaxe
startsWith(s, prefix)Argumentos
Valor retornado
Retorna 1 se s começar com prefix; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT startsWith('ClickHouse', 'Click');┌─startsWith('ClickHouse', 'Click')─┐
│ 1 │
└───────────────────────────────────┘startsWithCaseInsensitive
Introduzido em: v25.10.0
Verifica se uma string começa com a string fornecida, sem distinção entre maiúsculas e minúsculas.
Sintaxe
startsWithCaseInsensitive(s, prefix)Argumentos
s— String a ser verificada.Stringprefix— prefixo sem distinção entre maiúsculas e minúsculas a ser verificado.String
Valor retornado
Retorna 1 se s começar com o prefix sem distinção entre maiúsculas e minúsculas; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT startsWithCaseInsensitive('ClickHouse', 'CLICK');┌─startsWithCaseInsensitive('ClickHouse', 'CLICK')─┐
│ 1 │
└──────────────────────────────────────────────────┘startsWithCaseInsensitiveUTF8
Introduzido em: v25.10.0
Verifica se uma string começa com o prefixo fornecido sem diferenciar maiúsculas de minúsculas. Pressupõe que a string contenha texto válido codificado em UTF-8. Se essa suposição for violada, nenhuma exceção é lançada e o resultado é indefinido.
Sintaxe
startsWithCaseInsensitiveUTF8(s, prefix)Argumentos
s— String a ser verificada.Stringprefix— Prefixo sem distinção entre maiúsculas e minúsculas a ser verificado.String
Valor retornado
Retorna 1 se s começar com o prefix sem distinção entre maiúsculas e minúsculas; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT startsWithCaseInsensitiveUTF8('приставка', 'при')┌─startsWithCaseInsensitiveUTF8('приставка', 'при')─┐
│ 1 │
└───────────────────────────────────────────────────┘startsWithUTF8
Introduzido em: v23.8.0
Verifica se uma string começa com o prefixo informado. Pressupõe que a string contenha texto válido codificado em UTF-8. Se essa suposição for violada, nenhuma exceção é lançada e o resultado é indefinido.
Sintaxe
startsWithUTF8(s, prefix)Argumentos
Valor retornado
Retorna 1 se s começar com prefix; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
SELECT startsWithUTF8('приставка', 'при')┌─startsWithUTF8('приставка', 'при')─┐
│ 1 │
└────────────────────────────────────┘stringBytesEntropy
Introduzido em: v25.6.0
Calcula a entropia de Shannon da distribuição de bytes em uma string.
Sintaxe
stringBytesEntropy(s)Argumentos
s— A string a ser analisada.String
Valor retornado
Retorna a entropia de Shannon da distribuição dos bytes na string. Float64
Exemplos
Exemplo de uso
SELECT stringBytesEntropy('Hello, world!')┌─stringBytesEntropy('Hello, world!')─┐
│ 3.180832987205441 │
└─────────────────────────────────────┘stringBytesUniq
Introduzido em: v25.6.0
Conta o número de bytes distintos em uma string.
Sintaxe
stringBytesUniq(s)Argumentos
s— A string a ser analisada.String
Valor retornado
Retorna o número de bytes distintos na string. UInt16
Exemplos
Exemplo de uso
SELECT stringBytesUniq('Hello')┌─stringBytesUniq('Hello')─┐
│ 4 │
└──────────────────────────┘stringJaccardIndex
Introduzido em: v23.11.0
Calcula o índice de similaridade de Jaccard entre duas sequências de bytes.
Sintaxe
stringJaccardIndex(s1, s2)Argumentos
Valor retornado
Retorna o índice de similaridade de Jaccard entre as duas strings. Float64
Exemplos
Exemplo de uso
SELECT stringJaccardIndex('clickhouse', 'mouse')┌─stringJaccardIndex('clickhouse', 'mouse')─┐
│ 0.4 │
└───────────────────────────────────────────┘stringJaccardIndexUTF8
Introduzido em: v23.11.0
Semelhante a stringJaccardIndex, mas para strings codificadas em UTF-8.
Sintaxe
stringJaccardIndexUTF8(s1, s2)Argumentos
Valor retornado
Retorna o índice de similaridade de Jaccard entre as duas strings UTF-8. Float64
Exemplos
Exemplo de uso
SELECT stringJaccardIndexUTF8('我爱你', '我也爱你') AS jaccard_index┌─jaccard_index─┐
│ 0.75 │
└───────────────┘substring
Introduzido em: v1.1.0
Retorna a substring de uma string s que começa no índice de byte offset especificado.
A contagem de bytes começa em 1, com a seguinte lógica:
- Se
offsetfor0, retorna uma string vazia. - Se
offsetfor negativo, a substring começa aoffsetcaracteres do fim da string, em vez do início.
Um argumento opcional, length, especifica o número máximo de bytes que a substring retornada pode ter.
Veja também a função digits, que realiza a operação análoga nos dígitos de um número.
Sintaxe
substring(s, offset[, length])Aliases: byteSlice, mid, substr
Argumentos
s— A string a partir da qual a substring será calculada.StringouFixedStringouEnumoffset— A posição inicial da substring ems.(U)Int*length— Opcional. O comprimento máximo da substring.(U)Int*
Valor retornado
Retorna uma substring de s com length bytes, começando no índice offset. String
Exemplos
Uso básico
SELECT 'database' AS db, substr(db, 5), substr(db, 5, 1)┌─db───────┬─substr(db, 5)─┬─substr(db, 5, 1)─┐
│ database │ base │ b │
└──────────┴───────────────┴──────────────────┘substringIndex
Introduzido em: v23.7.0
Retorna a substring de s anterior a count ocorrências do delimitador delim, como no Spark ou no MySQL.
Sintaxe
substringIndex(s, delim, count)Aliases: SUBSTRING_INDEX
Argumentos
s— A string da qual a substring será extraída.Stringdelim— O caractere usado para separar.Stringcount— O número de ocorrências do delimitador a contar antes de extrair a substring. Secountfor positivo, tudo à esquerda do delimitador final (contando da esquerda) será retornado. Secountfor negativo, tudo à direita do delimitador final (contando da direita) será retornado.UIntouInt
Valor retornado
Retorna uma substring de s antes de count ocorrências de delim. String
Exemplos
Exemplo de uso
SELECT substringIndex('www.clickhouse.com', '.', 2)┌─substringIndex('www.clickhouse.com', '.', 2)─┐
│ www.clickhouse │
└──────────────────────────────────────────────┘substringIndexUTF8
Introduzido em: v23.7.0
Retorna a substring de s que precede count ocorrências do delimitador delim, especificamente para pontos de código Unicode.
Pressupõe que a string contenha texto válido codificado em UTF-8.
Se essa suposição for violada, não é lançada nenhuma exceção e o resultado é indefinido.
Sintaxe
substringIndexUTF8(s, delim, count)Argumentos
s— A string da qual a substring será extraída.Stringdelim— O caractere delimitador.Stringcount— O número de ocorrências do delimitador a serem contadas antes de extrair a substring. Secountfor positivo, tudo à esquerda do delimitador final (contando da esquerda) será retornado. Secountfor negativo, tudo à direita do delimitador final (contando da direita) será retornado.UIntouInt
Valor retornado
Retorna uma substring de s antes de count ocorrências de delim. String
Exemplos
Exemplo em UTF8
SELECT substringIndexUTF8('www.straßen-in-europa.de', '.', 2)www.straßen-in-europasubstringUTF8
Introduzido em: v1.1.0
Retorna a substring de uma string s que começa no índice de ponto de código offset especificado.
A contagem de pontos de código começa em 1, de acordo com a seguinte lógica:
- Se
offsetfor0, será retornada uma string vazia. - Se
offsetfor negativo, a substring começa aoffsetpontos de código do final da string, em vez de começar no início.
Um argumento opcional, length, especifica o número máximo de pontos de código que a substring retornada pode ter.
Sintaxe
substringUTF8(s, offset[, length])Argumentos
s— A string da qual extrair uma substring.StringouFixedStringouEnumoffset— A posição inicial da substring ems.IntouUIntlength— O comprimento máximo da substring. Opcional.IntouUInt
Valor retornado
Retorna uma substring de s com length pontos de código, começando no índice de ponto de código offset. String
Exemplos
Exemplo de uso
SELECT 'Täglich grüßt das Murmeltier.' AS str, substringUTF8(str, 9), substringUTF8(str, 9, 5)Täglich grüßt das Murmeltier. grüßt das Murmeltier. grüßttoValidUTF8
Introduzido em: v20.1.0
Converte uma string para uma codificação UTF-8 válida, substituindo quaisquer caracteres UTF-8 inválidos pelo caractere de substituição � (U+FFFD).
Quando vários caracteres inválidos consecutivos são encontrados, eles são condensados em um único caractere de substituição.
Sintaxe
toValidUTF8(s)Argumentos
s— Qualquer conjunto de bytes representado como um objeto do tipo de dado String.String
Valor retornado
Retorna uma string UTF-8 válida. String
Exemplos
Exemplo de uso
SELECT toValidUTF8('\\x61\\xF0\\x80\\x80\\x80b')\\x61\\xF0\\x80\\x80\\x80btrimBoth
Introduzido em: v20.1.0
Remove os caracteres especificados do início e do fim de uma string. Por padrão, remove caracteres ASCII de espaço em branco comuns.
Sintaxe
trimBoth(s[, trim_characters])Aliases: trim
Argumentos
s— String a ser processada.Stringtrim_characters— Opcional. Caracteres a serem removidos das extremidades. Se não for especificado, caracteres comuns de espaço em branco serão removidos.String
Valor retornado
Retorna a string com os caracteres especificados removidos de ambas as extremidades. String
Exemplos
Exemplo de uso
SELECT trimBoth('$$ClickHouse$$', '$')┌─trimBoth('$$ClickHouse$$', '$')─┐
│ ClickHouse │
└─────────────────────────────────┘trimLeft
Introduzido em: v20.1.0
Remove os caracteres especificados do início de uma string. Por padrão, remove caracteres de espaço em branco (ASCII) comuns.
Sintaxe
trimLeft(input[, trim_characters])Aliases: ltrim
Argumentos
input— String da qual os caracteres serão removidos.Stringtrim_characters— Opcional. Caracteres a serem removidos. Se não for especificado, caracteres de espaço em branco comuns serão removidos.String
Valor retornado
Retorna a string com os caracteres especificados removidos à esquerda. String
Exemplos
Exemplo de uso
SELECT trimLeft('ClickHouse', 'Click');┌─trimLeft('ClickHouse', 'Click')─┐
│ House │
└─────────────────────────────────┘trimRight
Introduzido na versão: v20.1.0
Remove os caracteres especificados do fim de uma string. Por padrão, remove caracteres de espaço em branco (ASCII) comuns.
Sintaxe
trimRight(s[, trim_characters])Aliases: rtrim
Argumentos
s— String da qual remover caracteres.Stringtrim_characters— Caracteres opcionais a serem removidos. Se não forem especificados, caracteres de espaço em branco comuns serão removidos.String
Valor retornado
Retorna a string com os caracteres especificados removidos à direita. String
Exemplos
Exemplo de uso
SELECT trimRight('ClickHouse','House');┌─trimRight('ClickHouse', 'House')─┐
│ Click │
└──────────────────────────────────┘tryBase32Decode
Introduzido em: v25.6.0
Aceita uma string e a decodifica usando a codificação Base32.
Sintaxe
tryBase32Decode(encoded)Argumentos
encoded— coluna String ou constante a ser decodificada. Se a string não estiver codificada em Base32 válida, retorna uma string vazia em caso de erro.String
Valor retornado
Retorna uma string contendo o valor decodificado do argumento. String
Exemplos
Exemplo de uso
SELECT tryBase32Decode('IVXGG33EMVSA====');┌─tryBase32Decode('IVXGG33EMVSA====')─┐
│ Encoded │
└─────────────────────────────────────┘tryBase58Decode
Introduzido em: v22.10.0
Semelhante a base58Decode, mas retorna uma string vazia em caso de erro.
Sintaxe
tryBase58Decode(encoded[, expected_size])Argumentos
encoded— coluna String ou constante. Se a string não for codificada em Base58 válida, retorna uma string vazia em caso de erro.Stringexpected_size— Opcional. Tamanho esperado após a decodificação, em bytes. Quando for 32 ou 64, será usado um decodificador otimizado; para outros valores, será usado o decodificador genérico.UInt8, UInt16, UInt32 ou UInt64
Valor retornado
Retorna uma string contendo o valor decodificado do argumento. String
Exemplos
Exemplo de uso
SELECT tryBase58Decode('3dc8KtHrwM') AS res, tryBase58Decode('invalid') AS res_invalid;┌─res─────┬─res_invalid─┐
│ Encoded │ │
└─────────┴─────────────┘tryBase64Decode
Introduzido em: v18.16.0
Assim como base64Decode, mas retorna uma string vazia em caso de erro.
Sintaxe
tryBase64Decode(encoded)Argumentos
encoded— colunaStringou constante a ser decodificada. Se a string não for uma Base64 válida, retorna uma string vazia em caso de erro.String
Valor retornado
Retorna uma string contendo o valor decodificado do argumento. String
Exemplos
Exemplo de uso
SELECT tryBase64Decode('Y2xpY2tob3VzZQ==')┌─tryBase64Decode('Y2xpY2tob3VzZQ==')─┐
│ clickhouse │
└─────────────────────────────────────┘tryBase64URLDecode
Introduzido na versão: v18.16.0
Assim como base64URLDecode, mas retorna uma string vazia em caso de erro.
Sintaxe
tryBase64URLDecode(encoded)Argumentos
encoded— coluna String ou constante a ser decodificada. Se a string não for uma string codificada em Base64 válida, retorna uma string vazia em caso de erro.String
Valor retornado
Retorna uma string que contém o valor decodificado do argumento. String
Exemplos
Exemplo de uso
SELECT tryBase64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')┌─tryBase64URLDecode('aHR0cHM6Ly9jbGlja2hvdXNlLmNvbQ')─┐
│ https://clickhouse.com │
└──────────────────────────────────────────────────────┘tryIdnaEncode
Introduzido na versão: v24.1.0
Retorna a representação em Unicode (UTF-8) (algoritmo ToUnicode) de um nome de domínio de acordo com o mecanismo Internationalized Domain Names in Applications (IDNA). Em caso de erro, retorna uma string vazia em vez de gerar uma exceção.
Sintaxe
tryIdnaEncode(s)Argumentos
s— String de entrada.String
Valor retornado
Retorna uma representação ASCII da string de entrada de acordo com o mecanismo IDNA do valor de entrada, ou uma string vazia se a entrada for inválida. String
Exemplos
Exemplo de uso
SELECT tryIdnaEncode('straße.münchen.de')┌─tryIdnaEncode('straße.münchen.de')─┐
│ xn--strae-oqa.xn--mnchen-3ya.de │
└────────────────────────────────────┘tryPunycodeDecode
Introduzido em: v24.1.0
Como punycodeDecode, mas retorna uma string vazia se não for fornecida uma string codificada em Punycode válida.
Sintaxe
tryPunycodeDecode(s)Argumentos
s— String codificada em Punycode.String
Valor retornado
Retorna o valor de entrada em texto simples ou uma string vazia se a entrada for inválida. String
Exemplos
Exemplo de uso
SELECT tryPunycodeDecode('Mnchen-3ya')┌─tryPunycodeDecode('Mnchen-3ya')─┐
│ München │
└─────────────────────────────────┘upper
Introduzido na versão: v1.1.0
Converte os caracteres latinos ASCII de uma string em maiúsculas.
Sintaxe
upper(s)Aliases: ucase
Argumentos
s— A string a ser convertida para letras maiúsculas.String
Valor retornado
Retorna s em letras maiúsculas. String
Exemplos
Exemplo de uso
SELECT upper('clickhouse')┌─upper('clickhouse')─┐
│ CLICKHOUSE │
└─────────────────────┘upperUTF8
Introduzido em: v1.1.0
Converte uma string em maiúsculas, assumindo que a string contém texto válido codificado em UTF-8. Se essa suposição não for atendida, nenhuma exceção será lançada e o resultado será indefinido.
Sintaxe
upperUTF8(s)Argumentos
s— Um valor do tipo String.String
Valor retornado
Um valor do tipo de dados String. String
Exemplos
Exemplo de uso
SELECT upperUTF8('München') AS Upperutf8┌─Upperutf8─┐
│ MÜNCHEN │
└───────────┘