A busca sem diferenciar maiúsculas de minúsculas segue as regras de conversão entre minúsculas e maiúsculas do idioma inglês. Por exemplo, o
i maiúsculo em inglês é
I, enquanto em turco é İ — os resultados para idiomas diferentes do inglês podem ser inesperados.haystack) e a string de busca (chamada nesta seção de needle) sejam textos codificados em byte único. Se essa suposição for
violada, nenhuma exceção é gerada e os resultados são indefinidos. A busca com strings codificadas em UTF-8 geralmente é oferecida por variantes separadas da função. Da mesma forma, se uma variante de função UTF-8 for usada e as strings de entrada não forem texto codificado em UTF-8, nenhuma exceção é gerada e os
resultados são indefinidos. Observe que nenhuma normalização Unicode automática é realizada; no entanto, você pode usar as funções
normalizeUTF8*() para isso.
Funções gerais de strings e funções de substituição em strings são descritas separadamente.
A documentação abaixo é gerada a partir da tabela de sistema
system.functions.countMatches
Comportamento dependente da versãoO comportamento desta função depende da versão do ClickHouse:
- em versões < v25.6, a função para de contar na primeira correspondência vazia, mesmo que o padrão a aceite.
- em versões >= 25.6, a função continua a execução quando ocorre uma correspondência vazia. O comportamento legado pode ser restaurado usando a configuração
count_matches_stop_at_empty_match = true;
UInt64
Exemplos
Contar sequências de dígitos
Query
Response
countMatchesCaseInsensitive
countMatches, mas faz correspondência sem diferenciar maiúsculas de minúsculas.
Sintaxe
haystack— A string na qual pesquisar.Stringpattern— Padrão de expressão regular.const String
UInt64
Exemplos
Contagem sem diferenciar maiúsculas de minúsculas
Query
Response
countSubstrings
needle ocorre na string haystack.
Sintaxe
haystack— String em que a busca é realizada. String ou Enum. -needle— Substring a ser pesquisada. String. -start_pos— Posição (baseada em 1) emhaystackna qual a busca se inicia. UInt. Opcional.
UInt64
Exemplos
Exemplo de uso
Query
Response
Query
Response
countSubstringsCaseInsensitive
countSubstrings, mas conta sem diferenciar maiúsculas de minúsculas.
Sintaxe
haystack— String em que a busca é realizada.StringouEnumneedle— Substring a ser buscada.Stringstart_pos— Opcional. Posição (baseada em 1) emhaystackna qual a busca começa.UInt*
haystack. UInt64
Exemplos
Exemplo de uso
Query
Response
Query
Response
countSubstringsCaseInsensitiveUTF8
countSubstrings, mas conta sem diferenciar maiúsculas de minúsculas e pressupõe que o haystack seja uma string UTF-8.
Sintaxe
haystack— String UTF-8 na qual a busca é realizada.StringouEnumneedle— Substring a ser pesquisada.Stringstart_pos— Opcional. Posição (começando em 1) emhaystackna qual a busca se inicia.UInt*
needle em haystack. UInt64
Exemplos
Exemplo de uso
Query
Response
Query
Response
extract
haystack— String de onde extrair.Stringpattern— Expressão regular, normalmente contendo um grupo de captura.const String
String
Exemplos
Extrair domínio de um e-mail
Query
Response
Query
Response
extractAll
extract, mas retorna um array com todas as correspondências de uma expressão regular em uma string.
Se ‘haystack’ não corresponder à regex ‘pattern’, será retornado um array vazio.
Se a expressão regular tiver grupos de captura (subpadrões), a função faz a correspondência da string de entrada com o primeiro grupo de captura.
Sintaxe
haystack— String da qual os fragmentos são extraídos.Stringpattern— Expressão regular, opcionalmente contendo grupos de captura.const String
Array(String)
Exemplos
Extrair todos os números
Query
Response
Query
Response
extractAllGroupsHorizontal
s— String de entrada da qual extrair os dados.StringouFixedStringregexp— Expressão regular usada para fazer a correspondência.const Stringouconst FixedString
Array(Array(String))
Exemplos
Exemplo de uso
Query
Response
extractGroups
extractAllGroupsHorizontal ou extractAllGroupsVertical.
Sintaxe
s— String de entrada da qual extrair.StringouFixedStringregexp— Expressão regular. Deve conter pelo menos um grupo de captura. Constante.const Stringouconst FixedString
1 a N, em que N é o número de grupos de captura em regexp) da primeira correspondência. Se não houver correspondência, retorna um array vazio. Array(String)
Exemplos
Exemplo de uso
Query
Response
hasAllTokens
hasAnyTokens, mas retorna 1 se todos os tokens na string ou array needle corresponderem à string input, e 0 caso contrário. Se input for uma coluna, retorna todas as linhas que satisfazem essa condição.
A coluna
input deve ter um índice de texto definido para desempenho ideal.
Se nenhum índice de texto estiver definido, a função fará uma varredura exaustiva da coluna, o que é várias ordens de magnitude mais lento do que uma consulta por índice.- o argumento
input(sempre), e - o argumento
needle(se fornecido como String) usa o tokenizer especificado para o índice de texto. Se a coluna não tiver nenhum índice de texto definido, o tokenizersplitByNonAlphaserá usado. Se o argumentoneedlefor do tipo Array(String), cada elemento do array será tratado como um token — não haverá tokenização adicional.
hasAllToken
Argumentos
input— A coluna de entrada.StringouFixedStringouArray(String)ouArray(FixedString)needles— tokens a serem buscados.StringouArray(String)tokenizer— O tokenizador a ser usado. Os argumentos válidos sãosplitByNonAlpha,splitByString,asciiCJK,ngrams,sparseGramsearray. Opcional; se não for definido explicitamente, o valor padrão ésplitByNonAlpha.const String
UInt8
Exemplos
Uso básico com uma needle do tipo String
Query
Response
Query
Response
tokens
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
hasAnyTokens
needle corresponder à string input, e 0 caso contrário. Se input for uma coluna, retorna todas as linhas que satisfazem essa condição.
A coluna
input deve ter um índice de texto definido para um desempenho ideal.
Se nenhum índice de texto estiver definido, a função realiza uma varredura exaustiva da coluna, que é várias ordens de magnitude mais lenta que uma busca no índice.- o argumento
input(sempre), e - o argumento
needle(se fornecido como String) usando o tokenizador especificado para o índice de texto. Se a coluna não tiver um índice de texto definido, o tokenizadorsplitByNonAlphaserá usado. Se o argumentoneedlefor do tipo Array(String), cada elemento do array será tratado como um token — não haverá tokenização adicional.
hasAnyToken
Argumentos
input— A coluna de entrada.StringouFixedStringouNullable(String)ouNullable(FixedString)ouArray(String)ouArray(FixedString)ouArray(Nullable(String))ouArray(Nullable(FixedString))needles— tokens a serem procurados.StringouArray(String)tokenizer— O tokenizer a ser utilizado. Os argumentos válidos sãosplitByNonAlpha,splitByString,asciiCJK,ngrams,sparseGramsearray. Opcional; se não for definido explicitamente, o valor padrão ésplitByNonAlpha.const String
1 se houver pelo menos uma correspondência. Caso contrário, 0. UInt8
Exemplos
Uso básico com uma substring
Query
Response
Query
Response
tokens
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
hasPhrase
input e phrase usando o tokenizer especificado como terceiro argumento opcional.
O argumento tokenizer deve ser um de splitByNonAlpha, splitByString, ngrams ou asciiCJK.
Se nenhum tokenizer for especificado, o tokenizer splitByNonAlpha será usado por padrão.
Diferentemente de hasToken, hasAnyTokens e hasAllTokens, hasPhrase exige que os tokens apareçam na mesma ordem
e sem nenhum token entre eles. Por exemplo, hasPhrase('the quick brown fox', 'quick fox') retorna 0
porque “brown” aparece entre “quick” e “fox”.
Sintaxe
matchPhrase
Argumentos
input— A coluna de entrada.StringouFixedStringphrase— Frase a ser buscada.const Stringtokenizer— O tokenizer a ser usado. Opcional; o padrão ésplitByNonAlpha.const String
1 se a frase for encontrada como uma sequência contínua de tokens; caso contrário, retorna 0. UInt8
Exemplos
Correspondência por frase
Query
Response
Query
Response
hasSubsequence
haystack— String em que a subsequência será pesquisada.Stringneedle— Subsequência a ser pesquisada.String
1 se needle for uma subsequência de haystack; caso contrário, retorna 0. UInt8
Exemplos
Verificação básica de subsequência
Query
Response
Query
Response
hasSubsequenceCaseInsensitive
hasSubsequence, mas faz a busca sem diferenciar maiúsculas de minúsculas.
Sintaxe
UInt8
Exemplos
Exemplo de uso
Query
Response
hasSubsequenceCaseInsensitiveUTF8
hasSubsequenceUTF8, mas faz a busca sem diferenciar maiúsculas de minúsculas.
Sintaxe
haystack— String codificada em UTF-8 na qual a busca é realizada.Stringneedle— Subsequência codificada em UTF-8 a ser buscada.String
needle for uma subsequência de haystack, 0 caso contrário. UInt8
Exemplos
Exemplo de uso
Query
Response
hasSubsequenceUTF8
hasSubsequence, mas considera que haystack e needle são strings codificadas em UTF-8.
Sintaxe
1 se needle for uma subsequência de haystack; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
Query
Response
Query
Response
hasToken
[0-9A-Za-z_] (números, caracteres ASCII e underscore).
Sintaxe
haystack— String na qual será feita a busca.Stringtoken— Token a ser procurado.const String
1 se o token for encontrado; caso contrário, 0. UInt8
Exemplos
Busca por token
Query
Response
hasTokenCaseInsensitive
- Nenhum.
hasTokenCaseInsensitiveOrNull
- Nenhum.
hasTokenOrNull
hasToken, mas retorna NULL se o token estiver malformado.
Sintaxe
haystack— String na qual será feita a busca. Deve ser constante.Stringtoken— Token a ser buscado.const String
1 se o token for encontrado, 0 caso contrário, NULL se o token estiver malformado. Nullable(UInt8)
Exemplos
Exemplo de uso
Query
Response
highlight
haystack— O texto no qual pesquisar.StringouFixedStringneedles— Um array de termos de pesquisa a serem destacados.const Array(String)open_tag— A tag de abertura a ser inserida antes de cada ocorrência. Padrão:<em>.const Stringclose_tag— A tag de fechamento a ser inserida após cada ocorrência. Padrão:</em>.const String
String
Exemplos
Destaque básico
Query
Response
Query
Response
ilike
like, mas faz a busca sem diferenciar maiúsculas de minúsculas.
Sintaxe
haystack— String em que a busca é realizada.StringouFixedStringpattern— padrão LIKE usado para correspondência.String
1 se a string corresponder ao padrão LIKE (sem diferenciar maiúsculas de minúsculas); caso contrário, 0. UInt8
Exemplos
Exemplo de uso
Query
Response
like
haystack corresponde à expressão LIKE pattern.
Uma expressão LIKE pode conter caracteres normais e os seguintes metassímbolos:
%indica uma quantidade arbitrária de caracteres arbitrários (incluindo zero caracteres)._indica um único caractere arbitrário.\é usado para escapar os literais%,_e\.
_ corresponde ao ponto de código Unicode ¥, que em UTF-8 é representado por dois bytes.
Se o haystack ou a expressão LIKE não forem UTF-8 válidos, o comportamento será indefinido.
Nenhuma normalização Unicode automática é realizada; você pode usar as funções normalizeUTF8* para isso.
Para corresponder a %, _ e \ literais (que são metacaracteres de LIKE), prefixe-os com uma barra invertida: \%, \_ e \\.
A barra invertida perde seu significado especial (ou seja, é interpretada literalmente) se preceder um caractere diferente de %, _ ou \.
O ClickHouse exige que barras invertidas em strings também sejam escapadas, então na prática você precisará escrever
\\%, \\_ e \\\\.LIKE no formato %needle%, a função é tão rápida quanto a função position.
Todas as outras expressões LIKE são convertidas internamente em uma expressão regular e executadas com desempenho semelhante ao da função match.
Sintaxe
haystack— String em que a busca é realizada.StringouFixedStringpattern— PadrãoLIKEusado na correspondência. Pode conter%(corresponde a qualquer número de caracteres),_(corresponde a um único caractere) e\para escape.String
1 se a string corresponder ao padrão LIKE; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
Query
Response
Query
Response
Query
Response
locate
position, mas com os argumentos haystack e locate em ordem inversa.
Comportamento dependente da versãoO comportamento dessa função depende da versão do ClickHouse:
- nas versões < v24.3,
locateera um alias da funçãopositione aceitava os argumentos(haystack, needle[, start_pos]). - nas versões >= 24.3,
locateé uma função própria (para melhor compatibilidade com o MySQL) e aceita os argumentos(needle, haystack[, start_pos]). O comportamento anterior pode ser restaurado usando a configuraçãofunction_locate_has_mysql_compatible_argument_order = false.
needle— Substring a ser procurada.Stringhaystack— String na qual a busca é realizada.StringouEnumstart_pos— Opcional. Posição (baseada em 1) emhaystacka partir da qual a busca começa.UInt
0 se a substring não for encontrada. UInt64
Exemplos
Uso básico
Query
Response
match
¥ usa dois bytes internamente, mas a correspondência o trata como um único ponto de código.
A expressão regular não deve conter bytes NULL.
Se o haystack ou o pattern não forem UTF-8 válidos, o comportamento será indefinido.
Ao contrário do comportamento padrão do re2, . corresponde a quebras de linha. Para desativar isso, prefixe o padrão com (?-s).
O padrão não é ancorado. Para corresponder à string inteira, ancore o padrão usando ^ e $.
Se você só quiser procurar substrings, use as funções like ou position, que são muito mais rápidas do que esta função.
Sintaxe alternativa do operador: haystack REGEXP pattern.
Sintaxe
REGEXP_MATCHES
Argumentos
haystack— String na qual o padrão é buscado.Stringpattern— Padrão de expressão regular.const String
1 se o padrão corresponder, 0 caso contrário. UInt8
Exemplos
Correspondência de padrões simples
Query
Response
Query
Response
Query
Response
multiFuzzyMatchAllIndices
multiFuzzyMatchAny, mas retorna o array com todos os índices, em qualquer ordem, que correspondem ao haystack dentro de uma distância de edição constante.
Sintaxe
haystack— String na qual a busca é realizada.Stringdistance— A distância máxima de edição para correspondência aproximada.UInt8pattern— Array de padrões a serem correspondidos.Array(String)
haystack dentro da distância de edição especificada, em qualquer ordem. Retorna um array vazio se nenhuma correspondência for encontrada. Array(UInt64)
Exemplos
Exemplo de uso
Query
Response
multiFuzzyMatchAny
multiMatchAny, mas retorna 1 se algum padrão corresponder à haystack dentro de uma distância de edição constante.
Esta função depende de uma funcionalidade experimental da biblioteca hyperscan e pode ser lenta em alguns casos extremos.
O desempenho depende do valor da distância de edição e dos padrões usados, mas o custo é sempre maior em comparação com as variantes sem correspondência difusa.
A família de funções
multiFuzzyMatch*() não oferece suporte a expressões regulares UTF-8 (ela as trata como uma sequência de bytes) devido a restrições do hyperscan.haystack— String na qual a busca é realizada.Stringdistance— A distância máxima de edição para correspondência aproximada.UInt8pattern— Opcional. Um array de padrões para comparar.Array(String)
1 se algum padrão corresponder ao haystack dentro da distância de edição especificada; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
Query
Response
multiFuzzyMatchAnyIndex
multiFuzzyMatchAny, mas retorna qualquer índice que corresponda ao haystack com uma distância de edição constante.
Sintaxe
haystack— String na qual a busca é realizada.Stringdistance— A distância máxima de edição para correspondência aproximada.UInt8pattern— Array de padrões para correspondência.Array(String)
haystack dentro da distância de edição especificada; caso contrário, 0. UInt64
Exemplos
Exemplo de uso
Query
Response
multiMatchAllIndices
multiMatchAny, mas retorna o array com todos os índices que correspondem ao haystack, em qualquer ordem.
Sintaxe
haystack— String em que a busca é realizada.Stringpattern— Expressões regulares usadas na correspondência.String
haystack, em qualquer ordem. Retorna um array vazio se nenhuma correspondência for encontrada. Array(UInt64)
Exemplos
Exemplo de uso
Query
Response
multiMatchAny
multiSearchAny — ela funciona muito mais rápido do que esta função.
Sintaxe
haystack— String em que os padrões são buscados.Stringpattern1[, pattern2, ...]— Um array de um ou mais padrões de expressão regular.Array(String)
1 se algum padrão corresponder, 0 caso contrário. UInt8
Exemplos
Correspondência com múltiplos padrões
Query
Response
Query
Response
multiMatchAnyIndex
multiMatchAny, mas retorna qualquer índice que corresponda à string de entrada.
Sintaxe
haystack— String na qual a busca é realizada.Stringpattern— Expressões regulares a serem correspondidas.Array(String)
UInt64
Exemplos
Exemplo de uso
Query
Response
multiSearchAllPositions
position, mas retorna um array com as posições (em bytes, começando em 1) de várias substrings needle em uma string haystack.
Todas as funções multiSearch*() suportam no máximo 2^8 needles.
Sintaxe
haystack— String na qual a busca é feita.Stringneedle1[, needle2, ...]— Um array com uma ou mais substrings a serem buscadas.Array(String)
0 se a substring não for encontrada. Array(UInt64)
Exemplos
Busca por múltiplas substrings
Query
Response
multiSearchAllPositionsCaseInsensitive
multiSearchAllPositions, mas não diferencia maiúsculas de minúsculas.
Sintaxe
haystack— String na qual a busca é realizada.Stringneedle1[, needle2, ...]— Um array de uma ou mais substrings a serem pesquisadas.Array(String)
0 se a substring não for encontrada. Array(UInt64)
Exemplos
Multibusca sem distinção entre maiúsculas e minúsculas
Query
Response
multiSearchAllPositionsCaseInsensitiveUTF8
multiSearchAllPositionsUTF8, mas não diferencia maiúsculas de minúsculas.
Sintaxe
haystack— string codificada em UTF-8 na qual a busca é realizada.Stringneedle— substrings codificadas em UTF-8 que serão buscadas.Array(String)
Array
Exemplos
Busca UTF-8 sem diferenciar maiúsculas de minúsculas
Query
Response
multiSearchAllPositionsUTF8
multiSearchAllPositions, mas pressupõe que haystack e as substrings needle sejam strings codificadas em UTF-8.
Sintaxe
haystack— String codificada em UTF-8 na qual a busca é realizada.Stringneedle1[, needle2, ...]— Um array de substrings codificadas em UTF-8 a serem procuradas.Array(String)
0, se a substring não for encontrada. Array
Exemplos
Busca múltipla em UTF-8
Query
Response
multiSearchAny
multiSearchAnyCaseInsensitive, multiSearchAnyUTF8 e multiSearchAnyCaseInsensitiveUTF8 fornecem variantes sem distinção entre maiúsculas e minúsculas e/ou em UTF-8 desta função.
Sintaxe
haystack— String em que a busca é realizada.Stringneedle1[, needle2, ...]— Um array de substrings a serem pesquisadas.Array(String)
1 se houver pelo menos uma correspondência; caso contrário, 0. UInt8
Exemplos
Busca por qualquer correspondência
Query
Response
multiSearchAnyCaseInsensitive
haystack— String em que a busca é realizada.Stringneedle— Substrings a serem pesquisadas.Array(String)
1 se houver pelo menos uma correspondência sem distinção entre maiúsculas e minúsculas; caso contrário, retorna 0. UInt8
Exemplos
Busca sem distinção entre maiúsculas e minúsculas
Query
Response
multiSearchAnyCaseInsensitiveUTF8
haystack— string UTF-8 na qual a busca é realizada.Stringneedle— substrings UTF-8 a serem procuradas.Array(String)
1 se houver pelo menos uma correspondência sem diferenciar maiúsculas de minúsculas; caso contrário, retorna 0. UInt8
Exemplos
Dada a string UTF-8 ‘Здравствуйте’, verifique se o caractere ‘з’ (minúsculo) está presente
Query
Response
multiSearchAnyUTF8
haystack e as substrings needle são strings codificadas em UTF-8.
Sintaxe
haystack— string em UTF-8 na qual a busca é realizada.Stringneedle— substrings em UTF-8 a serem buscadas.Array(String)
1 se houver pelo menos uma correspondência; caso contrário, retorna 0. UInt8
Exemplos
Dada ‘你好,世界’ (‘Olá, mundo’) como uma string em UTF-8, verifique se a string contém algum caractere 你 ou 界
Query
Response
multiSearchFirstIndex
haystack— A string em que a busca será feita.Stringneedles— Array de strings a serem pesquisadas.Array(String)
needles) da primeira needle encontrada em haystack. Retorna 0 se nenhuma needle for encontrada. A busca diferencia maiúsculas de minúsculas. UInt64
Exemplos
Exemplo de uso
Query
Response
Query
Response
Query
Response
multiSearchFirstIndexCaseInsensitive
i (a partir de 1) da needle_i localizada mais à esquerda na string haystack e 0 caso contrário.
Não diferencia maiúsculas de minúsculas.
Sintaxe
haystack— String em que a busca é realizada.Stringneedle— Substrings a serem buscadas.Array(String)
0 se não houver correspondência. UInt8
Exemplos
Exemplo de uso
Query
Response
multiSearchFirstIndexCaseInsensitiveUTF8
haystack— A string em que a busca é feita.Stringneedles— Array de strings a serem buscadas.Array(String)
needles) da primeira string encontrada em haystack. Retorna 0 se nenhuma string for encontrada. A busca não diferencia maiúsculas de minúsculas e respeita a codificação de caracteres UTF-8. UInt64
Exemplos
Exemplo de uso
Query
Response
Query
Response
Query
Response
multiSearchFirstIndexUTF8
i (a partir de 1) da needle_i encontrada na posição mais à esquerda na string haystack, e 0 caso contrário.
Pressupõe que haystack e needle sejam strings codificadas em UTF-8.
Sintaxe
haystack— string em UTF-8 na qual a busca é realizada.Stringneedle— Array de substrings em UTF-8 a serem procuradas.Array(String)
needle encontrada mais à esquerda. Caso contrário, retorna 0 se não houver correspondência. UInt8
Exemplos
Exemplo de uso
Query
Response
multiSearchFirstPosition
position, mas retorna a posição mais à esquerda em uma string haystack que corresponde a qualquer uma de várias strings needle.
As funções multiSearchFirstPositionCaseInsensitive, multiSearchFirstPositionUTF8 e multiSearchFirstPositionCaseInsensitiveUTF8 fornecem variantes sem distinção entre maiúsculas e minúsculas e/ou em UTF-8 desta função.
Sintaxe
haystack— String na qual a busca é realizada.Stringneedle1[, needle2, ...]— Um array de uma ou mais substrings a serem buscadas.Array(String)
haystack que corresponda a qualquer uma de várias strings needle; caso contrário, 0, se não houver correspondência. UInt64
Exemplos
Busca da primeira posição
Query
Response
multiSearchFirstPositionCaseInsensitive
haystack— String em que a busca é realizada.Stringneedle— Array de substrings a serem buscadas.Array(String)
haystack que corresponde a qualquer uma das strings needle. Retorna 0 se não houver correspondência. UInt64
Exemplos
Primeira posição sem diferenciar maiúsculas de minúsculas
Query
Response
multiSearchFirstPositionCaseInsensitiveUTF8
haystack e needle como strings UTF-8 e não diferencia maiúsculas de minúsculas.
Sintaxe
haystack— string UTF-8 na qual a busca é realizada.Stringneedle— Array de substrings UTF-8 a serem procuradas.Array(String)
haystack que corresponde a qualquer uma das várias strings needle, sem diferenciar maiúsculas de minúsculas. Retorna 0 se não houver correspondência. UInt64
Exemplos
Encontre o deslocamento mais à esquerda na string UTF-8 ‘Здравствуй, мир’ (‘Hello, world’) que corresponde a qualquer uma das substrings fornecidas
Query
Response
multiSearchFirstPositionUTF8
haystack e needle sejam strings UTF-8.
Sintaxe
haystack— string UTF-8 na qual a busca é realizada.Stringneedle— Array de substrings UTF-8 a serem procuradas.Array(String)
haystack que corresponde a qualquer uma das várias strings needle. Retorna 0 se não houver correspondência. UInt64
Exemplos
Encontre o deslocamento da ocorrência mais à esquerda na string UTF-8 ‘Здравствуй, мир’ (‘Hello, world’) que corresponde a qualquer uma das strings needle fornecidas
Query
Response
ngramDistance
ngramDistanceCaseInsensitive, ngramDistanceUTF8, ngramDistanceCaseInsensitiveUTF8.
Sintaxe
0 e 1. Quanto menor o valor retornado, mais semelhantes são as strings. Float32
Exemplos
Calcular a distância por 4-gramas
Query
Response
ngramDistanceCaseInsensitive
ngramDistance sem diferenciar maiúsculas de minúsculas.
Calcula a distância de 4-gram entre duas strings, ignorando maiúsculas e minúsculas.
Quanto menor o valor retornado, mais semelhantes são as strings.
Sintaxe
Float32 entre 0 e 1. Float32
Exemplos
Distância de 4 gramas sem diferenciar maiúsculas de minúsculas
Query
Response
ngramDistanceCaseInsensitiveUTF8
ngramDistance que não diferencia maiúsculas de minúsculas.
Pressupõe que as strings needle e haystack sejam codificadas em UTF-8 e ignora maiúsculas e minúsculas.
Calcula a distância de 3-gramas entre duas strings UTF-8, ignorando maiúsculas e minúsculas.
Quanto menor o valor retornado, mais semelhantes são as strings.
Sintaxe
haystack— Primeira string de comparação codificada em UTF-8.Stringneedle— Segunda string de comparação codificada em UTF-8.String
Float32 entre 0 e 1. Float32
Exemplos
Distância UTF-8 de 3 gramas sem diferenciar maiúsculas de minúsculas
Query
Response
ngramDistanceUTF8
ngramDistance.
Pressupõe que as strings needle e haystack sejam codificadas em UTF-8.
Calcula a distância de 3-gramas entre duas strings UTF-8.
Quanto menor o valor retornado, mais semelhantes são as strings.
Sintaxe
haystack— Primeira string de comparação codificada em UTF-8.Stringneedle— Segunda string de comparação codificada em UTF-8.String
Float32 entre 0 e 1. Float32
Exemplos
Distância de 3-gramas UTF-8
Query
Response
ngramSearch
ngramSearchCaseInsensitive, ngramSearchUTF8, ngramSearchCaseInsensitiveUTF8.
Sintaxe
1 se a distância de 4-gramas entre as strings for menor ou igual a um limiar (1.0 por padrão); caso contrário, retorna 0. UInt8
Exemplos
Busca com 4-gramas
Query
Response
ngramSearchCaseInsensitive
ngramSearch que não diferencia maiúsculas de minúsculas.
Calcula a diferença não simétrica entre as strings needle e haystack, ou seja, o número de n-gramas da needle menos o número de n-gramas em comum, normalizado pelo número de n-gramas da needle.
Verifica se a distância de 4-gramas entre duas strings é menor ou igual a um determinado limiar, ignorando maiúsculas e minúsculas.
Sintaxe
1 se a distância de 4-gramas entre as strings for menor ou igual ao limiar (1.0 por padrão); caso contrário, retorna 0. UInt8
Exemplos
Busca sem distinção entre maiúsculas e minúsculas usando 4-gramas
Query
Response
ngramSearchCaseInsensitiveUTF8
ngramSearch sem diferenciar maiúsculas de minúsculas.
Pressupõe que haystack e needle sejam strings UTF-8 e ignora diferenças entre maiúsculas e minúsculas.
Verifica se a distância de 3-gramas entre duas strings UTF-8 é menor ou igual a um determinado limite, sem diferenciar maiúsculas de minúsculas.
Sintaxe
1 se a distância de 3-gramas entre as strings for menor ou igual a um limiar (1.0 por padrão), 0 caso contrário. UInt8
Exemplos
Busca UTF-8 sem diferenciar maiúsculas de minúsculas usando 3-gramas
Query
Response
ngramSearchUTF8
ngramSearch.
Pressupõe que haystack e needle sejam strings em UTF-8.
Verifica se a distância de 3-gramas entre duas strings em UTF-8 é menor ou igual a um determinado limite.
Sintaxe
1 se a distância de 3-gramas entre as strings for menor ou igual a um limiar (1.0 por padrão); caso contrário, 0. UInt8
Exemplos
Busca em UTF-8 usando 3-gramas
Query
Response
notILike
% e _ para correspondência com SQL LIKE.
Sintaxe
haystack— A string de entrada na qual a busca é feita.StringouFixedStringpattern— O padrão SQL LIKE usado para correspondência.%corresponde a qualquer número de caracteres (incluindo zero),_corresponde a exatamente um caractere.String
1 se a string não corresponder ao padrão (sem diferenciar maiúsculas de minúsculas); caso contrário, 0. UInt8
Exemplos
Exemplo de uso
Query
Response
notLike
like, mas com o resultado negado.
Sintaxe
haystack— String em que a busca é realizada.StringeFixedStringpattern— PadrãoLIKEpara correspondência.String
1 se a string não corresponder ao padrão LIKE; caso contrário, 0. UInt8
Exemplos
Exemplo de uso
Query
Response
Query
Response
position
needle em uma string haystack.
Se a substring needle estiver vazia, aplicam-se as seguintes regras:
- se nenhum
start_posfor especificado: retorna1 - se
start_pos = 0: retorna1 - se
start_pos >= 1estart_pos <= length(haystack) + 1: retornastart_pos - caso contrário: retorna
0
locate, positionCaseInsensitive, positionUTF8 e positionCaseInsensitiveUTF8.
Sintaxe
haystack— String em que a busca é realizada.StringouEnumneedle— Substring a ser procurada.Stringstart_pos— Posição emhaystack(começando em 1) na qual a busca se inicia. Opcional.UInt
0 se a substring não for encontrada. UInt64
Exemplos
Uso básico
Query
Response
Query
Response
Query
Response
needle vazio
Query
Response
positionCaseInsensitive
position, mas sem diferenciar maiúsculas de minúsculas.
Sintaxe
instr
Argumentos
haystack— String em que a busca é realizada.StringouEnumneedle— Substring a ser procurada.Stringstart_pos— Opcional. Posição (indexada a partir de 1) emhaystackna qual a busca começa.UInt*
0. UInt64
Exemplos
Busca sem diferenciar maiúsculas de minúsculas
Query
Response
positionCaseInsensitiveUTF8
positionUTF8, mas faz a busca sem diferenciar letras maiúsculas de minúsculas.
Sintaxe
haystack— String na qual a busca é realizada.StringouEnumneedle— Substring a ser procurada.Stringstart_pos— Opcional. Posição (base 1) emhaystackna qual a busca começa.UInt*
0. UInt64
Exemplos
Busca UTF-8 sem diferenciar maiúsculas de minúsculas
Query
Response
positionUTF8
position, mas presume que haystack e needle sejam strings codificadas em UTF-8.
Sintaxe
haystack— String na qual a busca é realizada.StringouEnumneedle— Substring a ser pesquisada.Stringstart_pos— Opcional. Posição (começando em 1) emhaystackna qual a busca se inicia.UInt*
0. UInt64
Exemplos
Contagem de caracteres UTF-8
Query
Response