Pular para o conteúdo principal

array

Introduzido em: v1.1.0 Cria um array a partir dos argumentos da função. Os argumentos devem ser constantes e ter tipos que compartilhem um supertipo comum. É necessário fornecer pelo menos um argumento, pois, caso contrário, não fica claro qual tipo de array deve ser criado. Isso significa que você não pode usar esta função para criar um array vazio. Para isso, use a função emptyArray*. Use o operador [ ] para obter a mesma funcionalidade. Sintaxe
Argumentos
  • x1 — Valor constante de qualquer tipo T. Se apenas este argumento for fornecido, o array será do tipo T. - [, x2, ..., xN] — N valores constantes adicionais que compartilham um supertipo comum com x1
Valor retornado Retorna um array, em que ‘T’ é o tipo comum mais específico entre os argumentos fornecidos. Array(T) Exemplos Uso válido
Query
Response
Uso incorreto
Query
Response

arrayAUCPR

Introduzido em: v20.4.0 Calcula a área sob a curva de precisão-recall (PR). Uma curva de precisão-recall é criada ao plotar a precisão no eixo y e o recall no eixo x em todos os limiares. O valor resultante varia de 0 a 1, com valores mais altos indicando melhor desempenho do modelo. A PR AUC é particularmente útil para conjuntos de dados desbalanceados, proporcionando uma comparação de desempenho mais clara do que a ROC AUC nesses casos. Para mais detalhes, consulte aqui, aqui e aqui. Sintaxe
Aliases: arrayPRAUC Argumentos
  • cores — Pontuações fornecidas pelo modelo de predição. Array((U)Int*) ou Array(Float*)
  • labels — Rótulos das amostras, geralmente 1 para amostra positiva e 0 para amostra negativa. Array((U)Int*) ou Array(Enum)
  • partial_offsets
  • Opcional. Um Array(T) de três inteiros não negativos para calcular uma área parcial sob a curva PR (equivalente a uma faixa vertical no espaço PR) em vez da AUC completa. Essa opção é útil para o cálculo distribuído da PR AUC. O array deve conter os seguintes elementos [higher_partitions_tp, higher_partitions_fp, total_positives].
    • higher_partitions_tp: O número de rótulos positivos nas partições com pontuações mais altas.
    • higher_partitions_fp: O número de rótulos negativos nas partições com pontuações mais altas.
    • total_positives: O número total de amostras positivas em todo o conjunto de dados.
Quando arr_partial_offsets é usado, arr_scores e arr_labels devem corresponder apenas a uma partição de todo o conjunto de dados, contendo um intervalo de pontuações. O conjunto de dados deve ser dividido em partições contíguas, em que cada partição contém o subconjunto de dados cujas pontuações se enquadram em um intervalo específico. Por exemplo:
  • Uma partição pode conter todas as pontuações no intervalo [0, 0.5).
  • Outra partição pode conter pontuações no intervalo [0.5, 1.0].
Valor retornado Retorna a área sob a curva de precisão-recall (PR). Float64 Exemplos Exemplo de uso
Query
Response

arrayAll

Introduzido em: v1.1.0 Retorna 1 se a lambda func(x [, y1, y2, ... yN]) retornar verdadeiro para todos os elementos. Caso contrário, retorna 0. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera sobre os elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • cond1_arr, ... — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna 1 se a função lambda retornar verdadeiro para todos os elementos; caso contrário, 0 UInt8 Exemplos Todos os elementos satisfazem a condição
Query
Response
Nem todos os elementos coincidem
Query
Response

arrayAutocorrelation

Introduzido em: v26.4.0 Calcula a autocorrelação de um array. Se max_lag for informado, calcula a correlação apenas para defasagens no intervalo [0, max_lag). Se max_lag não for informado, calcula para todas as defasagens possíveis. Sintaxe
Argumentos
  • arr — Array de números. Array(T)
  • max_lag — Opcional. Número máximo de defasagens a calcular. Deve ser um inteiro não negativo. Integer
Valor retornado Retorna um array de Float64. Retorna NaN se a variância for 0. Array(Float64) Exemplos Linear
Query
Response
Simétrico
Query
Response
Constante
Query
Response
Limitado
Query
Response

arrayAvg

Introduzido em: v21.1.0 Retorna a média dos elementos do array de origem. Se uma função lambda func for especificada, retorna a média dos elementos resultantes da lambda. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Opcional. Uma função lambda que opera sobre os elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna a média dos elementos no array de origem ou, se fornecida, a média dos resultados da função lambda. Float64 Exemplos Exemplo básico
Query
Response
Uso com função lambda
Query
Response

arrayCompact

Introduzido em: v20.1.0 Remove elementos duplicados consecutivos de um array, incluindo valores null. A ordem dos valores no array resultante é determinada pela ordem dos elementos no array de origem. Sintaxe
Argumentos
  • arr — Um array do qual serão removidos os valores duplicados. Array(T)
Valor retornado Retorna um array sem valores duplicados Array(T) Exemplos Exemplo de uso
Query
Response

arrayConcat

Introduzido em: v1.1.0 Combina os arrays passados como argumentos. Sintaxe
Argumentos
  • arr1 [, arr2, ... , arrN] — N arrays para concatenar. Array(T)
Valor retornado Retorna um único array combinado a partir dos argumentos de array fornecidos. Array(T) Exemplos Exemplo de uso
Query
Response

arrayCount

Introduzido em: v1.1.0 Retorna o número de elementos para os quais func(arr1[i], ..., arrN[i]) retorna verdadeiro. Se func não for especificada, retorna o número de elementos não nulos no array. arrayCount é uma função de ordem superior. Sintaxe
Argumentos
  • func — Opcional. Função a ser aplicada a cada elemento do(s) array(s). Função lambda
  • arr1, ..., arrN — N arrays. Array(T)
Valor retornado Retorna o número de elementos para os quais func retorna verdadeiro. Caso contrário, retorna o número de elementos não zero no array. UInt32 Exemplos Exemplo de uso
Query
Response

arrayCumSum

Introduzido em: v1.1.0 Retorna um array com as somas parciais (acumuladas) dos elementos no array de entrada. Se uma função lambda for especificada, a soma será calculada aplicando a função lambda aos elementos do array em cada posição. Sintaxe
Argumentos
  • func — Opcional. Uma função lambda a ser aplicada aos elementos do array em cada posição. Função lambda
  • arr1 — O array de origem de valores numéricos. Array(T)
  • [arr2, ..., arrN] — Opcional. Arrays adicionais do mesmo tamanho, passados como argumentos para a função lambda, se especificada. Array(T)
Valor retornado Retorna um array com as somas parciais dos elementos do array de origem. O tipo do resultado corresponde ao tipo numérico do array de entrada. Array(T) Exemplos Uso básico
Query
Response
Com função lambda
Query
Response

arrayCumSumNonNegative

Introduzido em: v18.12.0 Retorna um array com as somas parciais (acumuladas) dos elementos no array de origem, substituindo por zero qualquer soma acumulada negativa. Se uma função lambda for especificada, a soma é calculada aplicando a função lambda aos elementos do array em cada posição. Sintaxe
Argumentos
  • func — Opcional. Uma função lambda a ser aplicada aos elementos do array em cada posição. Função lambda
  • arr1 — O array de origem de valores numéricos. Array(T)
  • [arr2, ..., arrN] — Opcional. Arrays adicionais do mesmo tamanho, passados como argumentos para a função lambda, se ela for especificada. Array(T)
Valor retornado Retorna um array com as somas parciais dos elementos do array de origem, com qualquer soma acumulada negativa substituída por zero. O tipo do resultado corresponde ao tipo numérico do array de entrada. Array(T) Exemplos Uso básico
Query
Response
Com lambda
Query
Response

arrayDifference

Introduzido em: v1.1.0 Calcula um array com as diferenças entre elementos adjacentes do array. O primeiro elemento do array resultante será 0, o segundo arr[1] - arr[0], o terceiro arr[2] - arr[1] e assim por diante. O tipo dos elementos no array resultante é determinado pelas regras de inferência de tipo para subtração (por exemplo, UInt8 - UInt8 = Int16). Sintaxe
Argumentos
  • arr — Array para o qual serão calculadas as diferenças entre elementos adjacentes. Array(T)
Valor retornado Retorna um array com as diferenças entre elementos adjacentes do array UInt* Exemplos Exemplo de uso
Query
Response
Exemplo de overflow causado pelo tipo de resultado Int64
Query
Response

arrayDistinct

Introduzido em: v1.1.0 Retorna um array que contém apenas os elementos distintos de um array. Sintaxe
Argumentos
  • arr — Array da qual extrair elementos distintos. Array(T)
Valor retornado Retorna um array contendo os elementos distintos Array(T) Exemplos Exemplo de uso
Query
Response

arrayDotProduct

Introduzido em: v23.5.0 Retorna o produto escalar de dois arrays.
Os dois vetores devem ter o mesmo tamanho. Arrays e Tuples também podem conter tipos de elementos mistos.
Sintaxe
Argumentos Valor retornado O produto escalar dos dois vetores.
O tipo de retorno é determinado pelos tipos dos argumentos. Se Arrays ou Tuples contiverem tipos de elemento mistos, o tipo do resultado será o supertipo.
(U)Int* ou Float* ou Decimal Exemplos Exemplo de Array
Query
Response
Exemplo de Tuple
Query
Response

arrayElement

Introduzido em: v1.1.0 Obtém o elemento do array fornecido no índice n, em que n pode ser de qualquer tipo inteiro. Se o índice estiver fora dos limites de um array, a função retornará um valor padrão (0 para números, uma string vazia para strings etc.), exceto no caso de argumentos com um array não constante e um índice constante 0. Nesse caso, ocorrerá o erro Array indices are 1-based.
Arrays no ClickHouse são indexados a partir de 1.
Índices negativos são suportados. Nesse caso, o elemento correspondente é selecionado, contando a partir do final. Por exemplo, arr[-1] é o último item do array. O operador [n] fornece a mesma funcionalidade. Sintaxe
Argumentos
  • arr — O array em que pesquisar. Array(T). - n — Posição do elemento a ser obtido. (U)Int*.
Valor retornado Retorna um único array combinado a partir dos argumentos de array fornecidos Array(T) Exemplos Exemplo de uso
Query
Response
Indexação com índices negativos
Query
Response
Uso da notação [n]
Query
Response
Índice fora dos limites do array
Query
Response

arrayElementOrNull

Introduzido em: v1.1.0 Obtém o elemento do array fornecido no índice n, em que n pode ser qualquer tipo inteiro. Se o índice estiver fora dos limites do array, NULL será retornado em vez de um valor padrão.
Arrays no ClickHouse são indexados a partir de 1.
Índices negativos são compatíveis. Nesse caso, seleciona o elemento correspondente contado a partir do fim. Por exemplo, arr[-1] é o último item do array. Sintaxe
Argumentos
  • arrays — Número arbitrário de argumentos do tipo array. Array
Valor retornado Retorna um único array combinado a partir dos argumentos fornecidos. Array(T) Exemplos Exemplo de uso
Query
Response
Indexação com índices negativos
Query
Response
Índice fora dos limites do array
Query
Response

arrayEnumerate

Introduzido em: v1.1.0 Retorna o Array [1, 2, 3, ..., length (arr)] Essa função normalmente é usada com a cláusula ARRAY JOIN. Ela permite contar algo apenas uma vez para cada array após a aplicação de ARRAY JOIN. Essa função também pode ser usada em funções de ordem superior. Por exemplo, você pode usá-la para obter os índices do array dos elementos que correspondem a uma condição. Sintaxe
Argumentos
  • arr — O array a ser enumerado. Array
Valor retornado Retorna o array [1, 2, 3, ..., length (arr)]. Array(UInt32) Exemplos Exemplo básico com ARRAY JOIN
Query
Response

arrayEnumerateDense

Introduzido em: v18.12.0 Retorna um array do mesmo tamanho que o array de origem, indicando a posição da primeira ocorrência de cada elemento no array de origem. Sintaxe
Argumentos
  • arr — O array a ser enumerado. Array(T)
Valor retornado Retorna um array do mesmo tamanho que arr, indicando onde cada elemento aparece pela primeira vez no array de origem Array(T) Exemplos Exemplo de uso
Query
Response

arrayEnumerateDenseRanked

Introduzido em: v20.1.0 Retorna um array do mesmo tamanho que o array de origem, indicando onde cada elemento aparece pela primeira vez no array de origem. Permite enumerar um array multidimensional, com a possibilidade de especificar até que profundidade inspecionar o array. Sintaxe
Argumentos
  • clear_depth — Enumera separadamente os elementos no nível especificado. Deve ser menor ou igual a max_arr_depth. UInt*
  • arr — Array multidimensional a ser enumerado. Array(T)
  • max_array_depth — A profundidade efetiva máxima. Deve ser menor ou igual à profundidade de arr. UInt*
Valor retornado Retorna um array que indica onde cada elemento aparece pela primeira vez no array de origem Array Exemplos Uso básico
Query
Response
Uso com array multidimensional
Query
Response
Exemplo com clear_depth maior
Query
Response

arrayEnumerateUniq

Introduzido em: v1.1.0 Retorna um array do mesmo tamanho que o array de origem, indicando, para cada elemento, qual é sua posição entre os elementos com o mesmo valor. Esta função é útil ao usar ARRAY JOIN e agregação de elementos de array. A função pode receber vários arrays do mesmo tamanho como argumentos. Nesse caso, a unicidade é considerada para Tuples de elementos nas mesmas posições em todos os arrays. Sintaxe
Argumentos
  • arr1 — Primeiro array a ser processado. Array(T)
  • arr2, ... — Opcional. Arrays adicionais do mesmo tamanho para unicidade de tuplas. Array(UInt32)
Valor retornado Retorna um array em que cada elemento representa a posição entre os elementos com o mesmo valor ou tupla. Array(T) Exemplos Uso básico
Query
Response
Vários arrays
Query
Response
Agregação com ARRAY JOIN
Query
Response

arrayEnumerateUniqRanked

Introduzido em: v20.1.0 Retorna um array (ou array multidimensional) com as mesmas dimensões do array de entrada, indicando, para cada elemento, qual é sua posição entre os elementos com o mesmo valor. Permite enumerar um array multidimensional com a possibilidade de especificar até que profundidade procurar dentro do array. Sintaxe
Argumentos
  • clear_depth — Enumera separadamente os elementos no nível especificado. Inteiro positivo menor ou igual a max_arr_depth. UInt*
  • arr — Array N-dimensional a ser enumerado. Array(T)
  • max_array_depth — A profundidade efetiva máxima. Inteiro positivo menor ou igual à profundidade de arr. UInt*
Valor retornado Retorna um Array N-dimensional do mesmo tamanho de arr, em que cada elemento mostra a posição desse elemento em relação aos outros elementos com o mesmo valor. Array(T) Exemplos Exemplo 1
Query
Response
Exemplo 2
Query
Response
Exemplo 3
Query
Response
Exemplo 4
Query
Response

arrayExcept

Introduzido em: v25.9.0 Retorna um array contendo os elementos de source que não estão presentes em except, preservando a ordem original. Esta função realiza uma operação de diferença de conjuntos entre dois arrays. Para cada elemento em source, ela verifica se esse elemento existe em except (usando comparação exata). Caso não exista, o elemento é incluído no resultado. A operação mantém as seguintes propriedades:
  1. A ordem dos elementos de source é preservada
  2. Duplicatas em source são preservadas se não existirem em except
  3. NULL é tratado como um valor distinto
Sintaxe
Argumentos
  • source — O array de entrada que contém os elementos a serem filtrados. Array(T)
  • except — O array que contém os elementos a serem excluídos do resultado. Array(T)
Valor retornado Retorna um array do mesmo tipo que o array de entrada, contendo os elementos de source que não foram encontrados em except. Array(T) Exemplos básico
Query
Response
with_nulls1
Query
Response
with_nulls2
Query
Response
strings
Query
Response

arrayExists

Introduzido em: v1.1.0 Retorna 1 se houver pelo menos um elemento no array de origem para o qual func(x[, y1, y2, ... yN]) retorne true. Caso contrário, retorna 0. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera nos elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna 1 se a função lambda retornar verdadeiro para pelo menos um elemento; caso contrário, 0. UInt8 Exemplos Exemplo de uso
Query
Response

arrayFill

Introduzido em: v20.1.0 A função arrayFill processa sequencialmente um array de origem, do primeiro ao último elemento, avaliando uma condição lambda em cada posição com base em elementos do array de origem e dos arrays de condição. Quando a função lambda retorna false na posição i, a função substitui esse elemento pelo elemento na posição i-1 do estado atual do array. O primeiro elemento é sempre preservado, independentemente de qualquer condição. Sintaxe
Argumentos
  • func(x [, y1, ..., yN]) — Uma função lambda func(x [, y1, y2, ... yN]) → F(x [, y1, y2, ... yN]) que opera nos elementos do array de origem (x) e dos arrays de condição (y). função lambda
  • source_arr — O array de origem a ser processado. função lambda
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais à função lambda. Array(T)
Valor retornado Retorna um array Array(T) Exemplos Exemplo com um único array
Query
Response
Exemplo com dois arrays
Query
Response

arrayFilter

Introduzido em: v1.1.0 Retorna um array que contém apenas os elementos do array de origem para os quais uma função lambda retorna true. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera sobre os elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna um subconjunto do array de origem Array(T) Exemplos Exemplo 1
Query
Response
Exemplo 2
Query
Response

arrayFirst

Introduzido em: v1.1.0 Retorna o primeiro elemento no array de entrada para o qual func(x[, y1, y2, ... yN]) retorna verdadeiro; caso contrário, retorna um valor padrão. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera nos elementos do array de origem (x) e dos arrays de condição (y). Função lambda. - source_arr — O array de origem a ser processado. Array(T). - [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais à função lambda. Array(T).
Valor retornado Retorna o primeiro elemento do array de origem para o qual λ é verdadeiro; caso contrário, retorna o valor padrão de T. Exemplos Exemplo de uso
Query
Response
Nenhuma correspondência
Query
Response

arrayFirstIndex

Introduzido em: v1.1.0 Retorna o índice do primeiro elemento no array de origem para o qual func(x[, y1, y2, ... yN]) retorna verdadeiro; caso contrário, retorna ‘0’. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera nos elementos do array de origem (x) e dos arrays de condição (y). Função lambda. - source_arr — O array de origem a ser processado. Array(T). - [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T).
Valor retornado Retorna o índice do primeiro elemento do array de origem para o qual func é verdadeiro; caso contrário, retorna 0 UInt32 Exemplos Exemplo de uso
Query
Response
Sem correspondência
Query
Response

arrayFirstOrNull

Introduzido em: v1.1.0 Retorna o primeiro elemento do array de origem para o qual func(x[, y1, y2, ... yN]) retorna true; caso contrário, retorna NULL. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que atua sobre os elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais à função lambda. Array(T)
Valor retornado Retorna o primeiro elemento do array de origem para o qual func é verdadeiro; caso contrário, retorna NULL. Exemplos Exemplo de uso
Query
Response
Sem correspondência
Query
Response

arrayFlatten

Introduzido em: v20.1.0 Converte um array de arrays em um array plano. Função:
  • Aplica-se a qualquer nível de profundidade de arrays aninhados.
  • Não altera arrays que já são planos.
O array achatado contém todos os elementos de todos os arrays de origem. Sintaxe
Aliases: flatten Argumentos Valor retornado Retorna um array unidimensional a partir do array multidimensional Array(T) Exemplos Exemplo de uso
Query
Response

arrayFold

Introduzido em: v23.10.0 Aplica uma função lambda a um ou mais arrays de mesmo tamanho e acumula o resultado em um acumulador. Sintaxe
Argumentos
  • λ(x, x1 [, x2, x3, ... xN]) — Uma função lambda λ(acc, x1 [, x2, x3, ... xN]) → F(acc, x1 [, x2, x3, ... xN]), em que F é uma operação aplicada a acc e aos valores do array x, reutilizando o resultado de acc. Função lambda
  • arr1 [, arr2, arr3, ... arrN] — N arrays sobre os quais a operação será aplicada. Array(T)
  • acc — Valor do acumulador com o mesmo tipo do valor de retorno da função lambda.
Valor retornado Retorna o valor final de acc. Exemplos Exemplo de uso
Query
Response
Sequência de Fibonacci
Query
Response
Exemplo com vários arrays
Query
Response

arrayIntersect

Introduzido em: v1.1.0 Recebe múltiplos arrays e retorna um array com os elementos presentes em todos os arrays de origem. O resultado contém apenas valores únicos. Sintaxe
Argumentos
  • arrN — N arrays a partir dos quais o novo array será criado. Array(T).
Valor retornado Retorna um array com elementos distintos presentes em todos os N arrays Array(T) Exemplos Exemplo de uso
Query
Response

arrayJaccardIndex

Introduzido em: v23.7.0 Retorna o índice de Jaccard de dois arrays. Sintaxe
Argumentos Valor retornado Retorna o índice de Jaccard entre arr_x e arr_y Float64 Exemplos Exemplo de uso
Query
Response

arrayJoin

Introduzido em: v1.1.0 A função arrayJoin recebe uma linha que contém um array e o expande, gerando várias linhas — uma para cada elemento do array. Isso contrasta com as funções regulares no ClickHouse, que mapeiam valores de entrada para valores de saída dentro da mesma linha, e com as funções de agregação, que recebem um grupo de linhas e as “comprimem” ou “reduzem” a uma única linha de resumo (ou a um único valor dentro de uma linha de resumo, se usadas com GROUP BY). Todos os valores nas colunas são simplesmente copiados, exceto os valores da coluna à qual essa função é aplicada; eles são substituídos pelo valor correspondente do array. Sintaxe
Aliases: unnest Argumentos
  • arr — Um array a ser expandido. Array(T)
Valor retornado Retorna um conjunto de linhas geradas a partir da expansão de arr. Exemplos Uso básico
Query
Response
arrayJoin afeta todas as cláusulas da consulta
Query
Response
Usando várias funções arrayJoin
Query
Response
Resultados inesperados devido a otimizações
Query
Response
Usando a sintaxe ARRAY JOIN
Query
Response
Uso de Tuple
Query
Response

arrayLast

Introduzido em: v1.1.0 Retorna o último elemento no array de origem para o qual uma função lambda func(x [, y1, y2, ... yN]) retorna true; caso contrário, retorna um valor padrão. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera sobre elementos do array de origem (x) e arrays de condição (y). Função lambda. - source — O array de origem a ser processado. Array(T). - [, cond1, ... , condN] — Opcional. N arrays de condição que fornecem argumentos adicionais à função lambda. Array(T).
Valor retornado Retorna o último elemento do array de origem para o qual func é verdadeiro; caso contrário, retorna o valor padrão de T. Exemplos Exemplo de uso
Query
Response
Nenhuma correspondência
Query
Response

arrayLastIndex

Introduzido em: v1.1.0 Retorna o índice do último elemento no array de origem para o qual func(x[, y1, y2, ... yN]) retorna true; caso contrário, retorna ‘0’. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera nos elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna o índice do último elemento do array de origem para o qual func é verdadeiro; caso contrário, retorna 0 UInt32 Exemplos Exemplo de uso
Query
Response
Nenhuma correspondência
Query
Response

arrayLastOrNull

Introduzido em: v1.1.0 Retorna o último elemento do array de origem para o qual uma função lambda func(x [, y1, y2, ... yN]) retorna true; caso contrário, retorna NULL. Sintaxe
Argumentos
  • func(x [, y1, ..., yN]) — Uma função lambda que opera sobre os elementos do array de origem (x) e dos arrays de condição (y). Função lambda. - source_arr — O array de origem a ser processado. Array(T). - [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T).
Valor retornado Retorna o último elemento do array de origem para o qual λ não for verdadeiro; caso contrário, retorna NULL. Exemplos Exemplo de uso
Query
Response
Nenhuma correspondência
Query
Response

arrayLevenshteinDistance

Introduzido em: v25.4.0 Calcula a distância de Levenshtein entre dois arrays. Sintaxe
Argumentos Valor retornado Distância de Levenshtein entre o primeiro array e o segundo array. Float64 Exemplos Exemplo de uso
Query
Response

arrayLevenshteinDistanceWeighted

Introduzido em: v25.4.0 Calcula a distância de Levenshtein entre dois arrays com pesos personalizados para cada elemento. O número de elementos do array e o de seus pesos devem corresponder. Sintaxe
Argumentos Valor retornado Distância de Levenshtein entre os dois arrays, com pesos personalizados para cada elemento Float64 Exemplos Exemplo de uso
Query
Response

arrayMap

Introduzido na versão: v1.1.0 Retorna um array obtido dos arrays originais ao aplicar uma função lambda a cada elemento. Sintaxe
Argumentos
  • func — Uma função lambda que opera sobre os elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • arr — N arrays a serem processados. Array(T)
Valor retornado Retorna um array com os resultados da função lambda Array(T) Exemplos Exemplo de uso
Query
Response
Criando uma tupla com elementos de arrays diferentes
Query
Response

arrayMax

Introduzido em: v21.1.0 Retorna o maior elemento do array de origem. Se uma função lambda func for especificada, retorna o maior elemento entre os resultados da lambda. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Opcional. Uma função lambda aplicada aos elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna o maior elemento do array de origem ou, se fornecida, o maior elemento entre os resultados da função lambda. Exemplos Exemplo básico
Query
Response
Uso com função lambda
Query
Response

arrayMin

Introduzido em: v21.1.0 Retorna o menor elemento no array de entrada. Se uma função lambda func for especificada, retorna o menor elemento dos resultados da função lambda. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Opcional. Uma função lambda que opera nos elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • cond1_arr, ... — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna o menor elemento do array de origem ou, se fornecida, o menor elemento entre os resultados da função lambda. Exemplos Exemplo básico
Query
Response
Uso com função lambda
Query
Response

arrayNormalizedGini

Introduzido em: v25.1.0 Calcula o coeficiente de Gini normalizado. Sintaxe
Argumentos Valor retornado Uma tupla que contém os coeficientes de Gini dos valores previstos, o coeficiente de Gini dos valores normalizados e o coeficiente de Gini normalizado (= a razão entre os dois coeficientes de Gini anteriores) Tuple(Float64, Float64, Float64) Exemplos Exemplo de uso
Query
Response

arrayPartialReverseSort

Introduzido em: v23.2.0 Esta função é igual a arrayReverseSort, mas com o argumento adicional limit, que permite ordenação parcial.
Para manter apenas os elementos ordenados, use arrayResize.
Sintaxe
Argumentos
  • f(arr[, arr1, ... ,arrN]) — A função lambda a ser aplicada aos elementos do array x. Função lambda
  • arr — Array a ser ordenado. Array(T)
  • arr1, ... ,arrN — N arrays adicionais, caso f aceite vários argumentos. Array(T)
  • limit — Valor do índice até o qual a ordenação ocorrerá. (U)Int*
Valor retornado Retorna um array do mesmo tamanho que o array original, em que os elementos no intervalo [1..limit] são ordenados em ordem decrescente. Os elementos restantes (limit..N] ficam em ordem não especificada. Exemplos simple_int
Query
Response
simple_string
Query
Response
retain_sorted
Query
Response
lambda_simple
Query
Response
lambda_complex
Query
Response

arrayPartialShuffle

Introduzido em: v23.2.0 Retorna um array do mesmo tamanho que o array original, em que os elementos no intervalo [1..limit] formam um subconjunto aleatório do array original. O restante em (limit..n] deve conter os elementos que não estão no intervalo [1..limit], em ordem indefinida. O valor de limit deve estar no intervalo [1..n]. Valores fora desse intervalo equivalem a executar arrayShuffle completo:
Esta função não materializa constantes.O valor de limit deve estar no intervalo [1..N]. Valores fora desse intervalo equivalem a executar arrayShuffle completo.
Sintaxe
Argumentos
  • arr — O array a ser embaralhado. Array(T)
  • seed — Opcional. A semente usada na geração de números aleatórios. Se não for fornecida, uma semente aleatória será usada. (U)Int*
  • limit — Opcional. O número que limita as trocas de elementos, no intervalo [1..N]. (U)Int*
Valor retornado Array com elementos parcialmente embaralhados. Array(T) Exemplos no_limit1
Query
Response
no_limit2
Query
Response
random_seed
Query
Response
explicit_seed
Query
Response
materializar
Query
Response

arrayPartialSort

Introduzido em: v23.2.0 Esta função é igual a arraySort, mas com um argumento adicional, limit, que permite ordenação parcial.
Para manter apenas os elementos classificados, use arrayResize.
Sintaxe
Argumentos
  • f(arr[, arr1, ... ,arrN]) — A função lambda a ser aplicada aos elementos do array x. Função lambda
  • arr — Array a ser ordenado. Array(T)
  • arr1, ... ,arrN — N arrays adicionais, quando f aceita vários argumentos. Array(T)
  • limit — Valor do índice até o qual a ordenação ocorrerá. (U)Int*
Valor retornado Retorna um array do mesmo tamanho que o array original, em que os elementos no intervalo [1..limit] são ordenados em ordem crescente. Os elementos restantes (limit..N] ficam em ordem não especificada. Exemplos simple_int
Query
Response
simple_string
Query
Response
retain_sorted
Query
Response
lambda_simple
Query
Response
lambda_complex
Query
Response

arrayPopBack

Introduzido em: v1.1.0 Remove o último elemento da array. Sintaxe
Argumentos
  • arr — O array do qual o último elemento será removido. Array(T)
Valor retornado Retorna um array idêntico a arr, mas sem o último elemento de arr Array(T) Exemplos Exemplo de uso
Query
Response

arrayPopFront

Introduzido em: v1.1.0 Remove o primeiro elemento do array. Sintaxe
Argumentos
  • arr — O array do qual o primeiro elemento será removido. Array(T)
Valor retornado Retorna um array idêntico a arr, mas sem o seu primeiro elemento Array(T) Exemplos Exemplo de uso
Query
Response

arrayProduct

Introduzido em: v21.1.0 Retorna o produto dos elementos do array de origem. Se uma função lambda func for especificada, retorna o produto dos elementos resultantes da função lambda. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Opcional. Uma função lambda que opera nos elementos do array de origem (x) e dos arrays condicionais (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays condicionais que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna o produto dos elementos no array de origem ou, se fornecida, o produto dos elementos resultantes da função lambda. Float64 Exemplos Exemplo básico
Query
Response
Uso com função lambda
Query
Response

arrayPushBack

Introduzido em: v1.1.0 Adiciona um item ao final do array. Sintaxe
Argumentos
  • arr — O array ao qual o valor x será adicionado ao final. Array(T)
  • x
  • Valor único a ser adicionado ao final do array. Array(T).
  • Somente números podem ser adicionados a um array de números, e somente strings podem ser adicionadas a um array de strings.
  • Ao adicionar números, o ClickHouse define automaticamente o tipo de x de acordo com o tipo de dado do array.
  • Pode ser NULL. A função adiciona um elemento NULL a um array, e o tipo dos elementos do array é convertido em Nullable.
Para mais informações sobre os tipos de dados no ClickHouse, consulte Tipos de dados.
Valor retornado Retorna um array idêntico a arr, mas com um valor adicional x no final do array Array(T) Exemplos Exemplo de uso
Query
Response

arrayPushFront

Introduzido em: v1.1.0 Adiciona um elemento no início do array. Sintaxe
Argumentos
  • arr — O array ao qual o valor x será adicionado ao final. Array(T). - x
  • Valor único a ser adicionado ao início do array. Array(T).
  • Somente números podem ser adicionados a um array de números, e somente strings podem ser adicionadas a um array de strings.
  • Ao adicionar números, o ClickHouse define automaticamente o tipo de x de acordo com o tipo de dado do array.
  • Pode ser NULL. A função adiciona um elemento NULL ao array, e o tipo dos elementos do array é convertido para Nullable.
Para mais informações sobre os tipos de dados no ClickHouse, consulte Tipos de dados.
Valor retornado Retorna um array idêntico a arr, mas com um valor adicional x no início do array Array(T) Exemplos Exemplo de uso
Query
Response

arrayROCAUC

Introduzido em: v20.4.0 Calcula a área sob a curva ROC (receiver operating characteristic). Uma curva ROC é gerada ao traçar a Taxa de Verdadeiros Positivos (TPR) no eixo y e a Taxa de Falsos Positivos (FPR) no eixo x para todos os limiares. O valor resultante varia de zero a um, e valores mais altos indicam melhor desempenho do modelo. A ROC AUC (também conhecida simplesmente como AUC) é um conceito de aprendizado de máquina. Para mais detalhes, consulte aqui, aqui e aqui. Sintaxe
Aliases: arrayAUC Argumentos
  • scores — Pontuações geradas pelo modelo de predição. Array((U)Int*) ou Array(Float*)
  • labels — Rótulos das amostras, geralmente 1 para amostra positiva e 0 para amostra negativa. Array((U)Int*) ou Enum
  • scale — Opcional. Determina se a área normalizada deve ser retornada. Se for false, retorna a área sob a curva TP (verdadeiros positivos) x FP (falsos positivos). Valor padrão: true. Bool
  • partial_offsets
  • Um array de quatro inteiros não negativos para calcular uma área parcial sob a curva ROC (equivalente a uma faixa vertical no espaço ROC) em vez da AUC completa. Essa opção é útil para o cálculo distribuído da ROC AUC. O array deve conter os seguintes elementos [higher_partitions_tp, higher_partitions_fp, total_positives, total_negatives]. Array de Integers não negativos. Opcional.
    • higher_partitions_tp: O número de rótulos positivos nas partições com pontuações mais altas.
    • higher_partitions_fp: O número de rótulos negativos nas partições com pontuações mais altas.
    • total_positives: O número total de amostras positivas em todo o conjunto de dados.
    • total_negatives: O número total de amostras negativas em todo o conjunto de dados.
Quando arr_partial_offsets é usado, arr_scores e arr_labels devem corresponder apenas a uma partição de todo o conjunto de dados, contendo um intervalo de pontuações. O conjunto de dados deve ser dividido em partições contíguas, em que cada partição contém o subconjunto de dados cujas pontuações estão dentro de um intervalo específico. Por exemplo:
  • Uma partição pode conter todas as pontuações no intervalo [0, 0.5).
  • Outra partição pode conter pontuações no intervalo [0.5, 1.0].
Valor retornado Retorna a área sob a curva ROC (receiver operating characteristic). Float64 Exemplos Exemplo de uso
Query
Response

arrayRandomSample

Introduzido em: v23.10.0 Retorna um subconjunto com samples elementos aleatórios de um array de entrada. Se samples exceder o tamanho do array de entrada, o tamanho da amostra será limitado ao tamanho do array, ou seja, todos os elementos do array serão retornados, mas a ordem deles não é garantida. A função pode lidar tanto com arrays simples quanto com arrays aninhados. Sintaxe
Argumentos
  • arr — O array de entrada ou array multidimensional do qual serão amostrados os elementos. Array(T)
  • samples — O número de elementos a incluir na amostra aleatória. (U)Int*
Valor retornado Um array contendo uma amostra aleatória de elementos do array de entrada Array(T) Exemplos Exemplo de uso
Query
Response
Usando um array multidimensional
Query
Response

arrayReduce

Introduzido em: v1.1.0 Aplica uma função de agregação aos elementos de um array e retorna o resultado. O nome da função de agregação é fornecido como uma string entre aspas simples: 'max', 'sum'. Ao usar funções de agregação paramétricas, o parâmetro é indicado após o nome da função, entre parênteses: 'uniqUpTo(6)'. Sintaxe
Argumentos
  • agg_f — O nome de uma função de agregação, que deve ser uma constante. String
  • arr1[, arr2, ... , arrN] — N arrays correspondentes aos argumentos de agg_f. Array(T)
Valor retornado Retorna o resultado da função de agregação Exemplos Exemplo de uso
Query
Response
Exemplo com função de agregação usando vários argumentos
Query
Response
Exemplo com uma função de agregação paramétrica
Query
Response

arrayReduceInRanges

Introduzido em: v20.4.0 Aplica uma função de agregação aos elementos do array nos intervalos especificados e retorna um array contendo o resultado correspondente a cada intervalo. A função retornará o mesmo resultado que várias chamadas de arrayReduce(agg_func, arraySlice(arr1, index, length), ...). Sintaxe
Argumentos
  • agg_f — O nome da função de agregação a ser usada. String
  • ranges — O intervalo no qual agregar. Um array de tuplas (i, r) contendo o índice i a partir do qual começar e o intervalo r no qual agregar. Array(T) ou Tuple(T)
  • arr1[, arr2, ... ,arrN] — N arrays como argumentos da função de agregação. Array(T)
Valor retornado Retorna um array contendo os resultados da função de agregação nos intervalos especificados Array(T) Exemplos Exemplo de uso
Query
Response

arrayRemove

Introduzido em: v25.11.0 Remove todos os elementos de um array iguais a um determinado valor. NULLs são tratados como iguais. Sintaxe
Aliases: array_remove Argumentos
  • arr — Array(T) - elem — T
Valor retornado Retorna um subconjunto do array de origem Array(T) Exemplos Exemplo 1
Query
Response
Exemplo 2
Query
Response

arrayResize

Introduzido em: v1.1.0 Altera o tamanho do array. Sintaxe
Argumentos
  • arr — Array a ser redimensionado. Array(T)
  • size — -O novo tamanho do array. Se size for menor que o tamanho original do array, o array será truncado à direita. Se size for maior que o tamanho inicial do array, o array será estendido à direita com valores de extender ou com valores padrão do tipo de dado dos itens do array.
  • extender — Valor a ser usado para estender o array. Pode ser NULL.
Valor retornado Um array de tamanho size. Array(T) Exemplos Exemplo 1
Query
Response
Exemplo 2
Query
Response

arrayReverse

Introduzido em: v1.1.0 Inverte a ordem dos elementos de um array.
A função reverse(arr) realiza a mesma operação, mas também funciona com outros tipos de dados além de Arrays.
Sintaxe
Argumentos
  • arr — O array a ser revertido. Array(T)
Valor retornado Retorna um array do mesmo tamanho que o array original, com os elementos em ordem inversa Array(T) Exemplos Exemplo de uso
Query
Response

arrayReverseFill

Introduzido em: v20.1.0 A função arrayReverseFill processa sequencialmente um array de origem do último elemento até o primeiro, avaliando uma condição lambda em cada posição com base nos elementos dos arrays de origem e de condição. Quando a condição resulta em falso na posição i, a função substitui esse elemento pelo elemento na posição i+1 do estado atual do array. O último elemento é sempre preservado, independentemente de qualquer condição. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera sobre os elementos do array de origem (x) e dos arrays de condição (y). função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna um array com os elementos do array de origem substituídos pelos resultados da função lambda. Array(T) Exemplos Exemplo com um único array
Query
Response
Exemplo com dois arrays
Query
Response

arrayReverseSort

Introduzido na versão: v1.1.0 Ordena os elementos de um array em ordem decrescente. Se uma função f for especificada, o array fornecido será ordenado de acordo com o resultado da função aplicada aos elementos do array, e depois o array ordenado será invertido. Se f aceitar vários argumentos, a função arrayReverseSort receberá vários arrays aos quais os argumentos de func corresponderão. Se o array a ser ordenado contiver -Inf, NULL, NaN ou Inf, eles serão ordenados na seguinte ordem:
  1. -Inf
  2. Inf
  3. NaN
  4. NULL
arrayReverseSort é uma função de ordem superior. Sintaxe
Argumentos
  • f(y1[, y2 ... yN]) — A função lambda a ser aplicada aos elementos do array x. - arr — Um array a ser classificado. Array(T) - arr1, ..., yN — Opcional. N arrays adicionais, caso f aceite vários argumentos.
Valor retornado Retorna o array x classificado em ordem decrescente se nenhuma função lambda for fornecida; caso contrário, retorna um array classificado de acordo com a lógica da função lambda fornecida e, em seguida, invertido. Array(T). Exemplos Exemplo 1
Query
Response
Exemplo 2
Query
Response

arrayReverseSplit

Introduzido em: v20.1.0 Divide um array de origem em vários arrays. Quando func(x[, y1, ..., yN]) retorna algo diferente de zero, o array será dividido à direita do elemento. O array não será dividido após o último elemento. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera nos elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Função lambda
  • [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna um array de arrays. Array(Array(T)) Exemplos Exemplo de uso
Query
Response

arrayRotateLeft

Introduzido em: v23.8.0 Rotaciona um array para a esquerda pelo número de elementos especificado. Valores negativos de n são tratados como uma rotação para a direita pelo valor absoluto de n. Sintaxe
Argumentos
  • arr — O array cujos elementos serão rotacionados.Array(T). - n — Número de elementos a rotacionar. (U)Int8/16/32/64.
Valor retornado Um array rotacionado para a esquerda pelo número especificado de elementos Array(T) Exemplos Exemplo de uso
Query
Response
Valor negativo de n
Query
Response

arrayRotateRight

Introduzido em: v23.8.0 Rotaciona um array para a direita em um número especificado de elementos. Valores negativos de n equivalem a uma rotação para a esquerda pelo valor absoluto de n. Sintaxe
Argumentos
  • arr — O array cujos elementos serão rotacionados.Array(T). - n — Número de elementos a serem rotacionados. (U)Int8/16/32/64.
Valor retornado Um array rotacionado para a direita pelo número especificado de elementos Array(T) Exemplos Exemplo de uso
Query
Response
Valor negativo de n
Query
Response

arrayShiftLeft

Introduzido em: v23.8.0 Desloca um array para a esquerda pelo número de elementos especificado. Os novos elementos são preenchidos com o argumento fornecido ou com o valor padrão do tipo de elemento do array. Se o número de elementos for negativo, o array será deslocado para a direita. Sintaxe
Argumentos
  • arr — O array cujos elementos devem ser deslocados.Array(T). - n — Número de elementos a serem deslocados.(U)Int8/16/32/64. - default — Opcional. Valor padrão dos novos elementos.
Valor retornado Um array deslocado para a esquerda pelo número especificado de elementos Array(T) Exemplos Exemplo de uso
Query
Response
Valor negativo de n
Query
Response
Usando um valor padrão
Query
Response

arrayShiftRight

Introduzido em: v23.8.0 Desloca um array para a direita pelo número de elementos especificado. Os novos elementos são preenchidos com o argumento fornecido ou com o valor padrão do tipo de elemento do array. Se o número de elementos for negativo, o array é deslocado para a esquerda. Sintaxe
Argumentos
  • arr — O array cujos elementos devem ser deslocados. Array(T)
  • n — Número de elementos a serem deslocados. (U)Int8/16/32/64
  • default — Opcional. Valor padrão para os novos elementos.
Valor retornado Um array deslocado para a direita pelo número de elementos especificado Array(T) Exemplos Exemplo de uso
Query
Response
Valor negativo de n
Query
Response
Usando um valor padrão
Query
Response

arrayShingles

Introduzido em: v24.1.0 Gera um array de shingles (semelhantes a ngrams para strings), ou seja, subarrays consecutivos do array de entrada com um comprimento especificado. Sintaxe
Argumentos
  • arr — Array a partir do qual será gerado um array de shingles. Array(T)
  • l — O comprimento de cada shingle. (U)Int*
Valor retornado Um array com os shingles gerados Array(T) Exemplos Exemplo de uso
Query
Response

arrayShuffle

Introduzido em: v23.2.0 Retorna um array do mesmo tamanho que o array original, com os elementos em ordem embaralhada. Os elementos são reordenados de modo que cada permutação possível tenha a mesma probabilidade de ocorrer.
Esta função não materializa constantes.
Sintaxe
Argumentos
  • arr — O array que será embaralhado. Array(T)
  • seed (optional) — Opcional. A semente usada na geração de números aleatórios. Se não for fornecida, uma semente aleatória será usada. (U)Int*
Valor retornado Array com os elementos embaralhados Array(T) Exemplos Exemplo sem seed (resultados instáveis)
Query
Response
Exemplo sem seed (resultados estáveis)
Query
Response

arraySimilarity

Introduzido em: v25.4.0 Calcula a similaridade entre dois arrays de 0 a 1 com base na distância de Levenshtein ponderada. Sintaxe
Argumentos Valor retornado Retorna a similaridade entre 0 e 1 entre os dois arrays, com base na distância de Levenshtein ponderada Float64 Exemplos Exemplo de uso
Query
Response

arraySlice

Introduzido em: v1.1.0 Retorna uma parte do array, incluindo elementos NULL. Sintaxe
Argumentos
  • arr — Array a ser fatiado. Array(T)
  • offset — Deslocamento a partir da borda do array. Um valor positivo indica um deslocamento à esquerda, e um valor negativo indica um recuo à direita. A numeração dos elementos do array começa em 1. (U)Int*
  • length — O tamanho da fatia desejada. Se você especificar um valor negativo, a função retornará uma fatia aberta [offset, array_length - length]. Se você omitir o valor, a função retornará a fatia [offset, the_end_of_array]. (U)Int*
Valor retornado Retorna uma fatia do array com length elementos a partir do offset especificado Array(T) Exemplos Exemplo de uso
Query
Response

arraySort

Introduzido em: v1.1.0 Ordena os elementos do array fornecido em ordem crescente. Se uma função lambda f for especificada, a ordem de classificação será determinada pelo resultado da função lambda aplicada a cada elemento do array. Se a função lambda aceitar vários argumentos, a função arraySort receberá vários arrays aos quais os argumentos de f corresponderão. Se o array a ser ordenado contiver -Inf, NULL, NaN ou Inf, eles serão ordenados na seguinte ordem:
  1. -Inf
  2. Inf
  3. NaN
  4. NULL
arraySort é uma função de ordem superior. Sintaxe
Argumentos
  • f(y1[, y2 ... yN]) — A função lambda a ser aplicada aos elementos do array x. - arr — Um array a ser ordenado. Array(T) - arr1, ..., yN — Opcional. N arrays adicionais, caso f aceite vários argumentos.
Valor retornado Retorna o array arr ordenado em ordem crescente se nenhuma função lambda for fornecida; caso contrário, retorna um array ordenado de acordo com a lógica da função lambda fornecida. Array(T). Exemplos Exemplo 1
Query
Response
Exemplo 2
Query
Response
Exemplo 3
Query
Response

arraySplit

Introduzido em: v20.1.0 Divide um array de origem em vários arrays. Quando func(x [, y1, ..., yN]) retorna algo diferente de zero, o array é dividido antes do elemento. O array não será dividido antes do primeiro elemento. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Uma função lambda que opera sobre os elementos do array de origem (x) e dos arrays de condição (y).Função lambda. - source_arr — O array de origem a ser dividido Array(T). - [, cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T).
Valor retornado Retorna um array de arrays Array(Array(T)) Exemplos Exemplo de uso
Query
Response

arraySum

Introduzido em: v21.1.0 Retorna a soma dos elementos do array de origem. Se uma função lambda func for especificada, retorna a soma dos elementos dos resultados da função lambda. Sintaxe
Argumentos
  • func(x[, y1, ..., yN]) — Opcional. Uma função lambda que opera nos elementos do array de origem (x) e dos arrays de condição (y). Função lambda
  • source_arr — O array de origem a ser processado. Array(T)
  • , cond1_arr, ... , condN_arr] — Opcional. N arrays de condição que fornecem argumentos adicionais para a função lambda. Array(T)
Valor retornado Retorna a soma dos elementos do array de origem ou, se fornecida, a soma dos elementos resultantes da função lambda. Exemplos Exemplo básico
Query
Response
Uso com função lambda
Query
Response

arraySymmetricDifference

Introduzido em: v25.4.0 Aceita vários arrays e retorna um array com elementos que não estão presentes em todos os arrays de entrada. O resultado contém apenas valores únicos.
A diferença simétrica de mais de dois conjuntos é definida matematicamente como o conjunto de todos os elementos de entrada que ocorrem em um número ímpar de conjuntos de entrada. Em contraste, a função arraySymmetricDifference simplesmente retorna o conjunto de elementos de entrada que não ocorrem em todos os conjuntos de entrada.
Sintaxe
Argumentos
  • arrN — N arrays a partir dos quais o novo array é criado. Array(T).
Valor retornado Retorna um array de elementos distintos que não estão presentes em todos os arrays de origem Array(T) Exemplos Exemplo de uso
Query
Response

arrayTranspose

Introduzido em: v26.4.0 Transpõe um array de duas dimensões. Todos os arrays internos devem ter o mesmo comprimento. Sintaxe
Argumentos
  • arr — Um array bidimensional a ser transposto. Todos os arrays internos devem ter o mesmo comprimento. Array(Array(T))
Valor retornado Um array bidimensional transposto em que o elemento [i][j] do resultado é igual ao elemento [j][i] do array de entrada. Array(Array(T)) Exemplos Matriz quadrada
Query
Response
Matriz não quadrada
Query
Response
Elementos de String
Query
Response

arrayUnion

Introduzido em: v24.10.0 Recebe vários arrays e retorna um array que contém todos os elementos presentes em qualquer um dos arrays de origem. O resultado contém apenas valores únicos. Sintaxe
Argumentos
  • arrN — N arrays usados para criar o novo array. Array(T)
Valor retornado Retorna um array com elementos distintos dos arrays de origem Array(T) Exemplos Exemplo de uso
Query
Response

arrayUniq

Introduzido em: v1.1.0 Quando é passado um único argumento, conta o número de elementos distintos no array. Quando são passados vários argumentos, conta o número de tuplas distintas formadas pelos elementos nas posições correspondentes de vários arrays. Por exemplo, SELECT arrayUniq([1,2], [3,4], [5,6]) formará as seguintes tuplas:
  • Posição 1: (1,3,5)
  • Posição 2: (2,4,6)
Em seguida, contará o número de tuplas únicas. Neste caso, 2. Todos os arrays passados devem ter o mesmo comprimento.
Se você quiser obter uma lista de itens únicos em um array, pode usar arrayReduce('groupUniqArray', arr).
Sintaxe
Argumentos
  • arr1 — Array em que se conta o número de elementos únicos. Array(T)
  • [, arr2, ..., arrN] — Opcional. Arrays adicionais usadas para contar o número de tuplas únicas de elementos nas posições correspondentes em vários arrays. Array(T)
Valor retornado Para um único argumento, retorna o número de elementos únicos. Para vários argumentos, retorna o número de tuplas únicas formadas por elementos nas posições correspondentes entre os arrays. UInt32 Exemplos Argumento único
Query
Response
Vários argumentos
Query
Response

arrayWithConstant

Introduzido em: v20.1.0 Cria um array de tamanho length preenchido com a constante x. Sintaxe
Argumentos
  • length — Número de elementos do array. (U)Int*
  • x — O valor dos N elementos do array, de qualquer tipo.
Valor retornado Retorna um Array com N elementos com valor x. Array(T) Exemplos Exemplo de uso
Query
Response

arrayZip

Introduzido em: v20.1.0 Combina vários arrays em um único array. O array resultante contém os elementos correspondentes dos arrays de origem, agrupados em tuplas na ordem em que os argumentos são listados. Sintaxe
Argumentos
  • arr1, arr2, ... , arrN — N arrays a serem combinados em um único array. Array(T)
Valor retornado Retorna um array com elementos dos arrays de origem agrupados em tuplas. Os tipos de dados na tupla são os mesmos dos arrays de entrada e seguem a mesma ordem em que os arrays são passados Array(T) Exemplos Exemplo de uso
Query
Response

arrayZipUnaligned

Introduzido em: v20.1.0 Combina vários arrays em um único array, permitindo arrays não alinhados (arrays com comprimentos diferentes). O array resultante contém os elementos correspondentes dos arrays de origem agrupados em tuplas, na ordem em que os argumentos são listados. Sintaxe
Argumentos
  • arr1, arr2, ..., arrN — N arrays a serem combinados em um único array. Array(T)
Valor retornado Retorna um array com elementos dos arrays de entrada agrupados em tuplas. Os tipos de dados na tupla são os mesmos dos arrays de entrada e seguem a mesma ordem em que os arrays são passados. Array(T) ou Tuple(T1, T2, ...) Exemplos Exemplo de uso
Query
Response

countEqual

Introduzido em: v1.1.0 Retorna o número de elementos do array iguais a x. Equivalente a arrayCount(elem -> elem = x, arr). Elementos NULL são tratados como valores distintos. Sintaxe
Argumentos
  • arr — Array em que será feita a busca. Array(T)
  • x — Valor no array a ser contado. Qualquer tipo.
Valor retornado Retorna o número de elementos do array iguais a x UInt64 Exemplos Exemplo de uso
Query
Response

empty

Introduzido em: v1.1.0 Verifica se o array de entrada está vazio. Um array é considerado vazio se não contiver nenhum elemento.
Pode ser otimizada ao habilitar a configuração optimize_functions_to_subcolumns. Com optimize_functions_to_subcolumns = 1, a função lê apenas a subcoluna size0, em vez de ler e processar toda a coluna de array. A consulta SELECT empty(arr) FROM TABLE; é transformada em SELECT arr.size0 = 0 FROM TABLE;.
A função também funciona com strings ou UUIDs. Sintaxe
Argumentos Valor retornado Retorna 1 para um array vazio ou 0 para um array não vazio UInt8 Exemplos Exemplo de uso
Query
Response

emptyArrayDate

Introduzido em: v1.1.0 Retorna um array de Date vazio Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de Date. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayDateTime

Introduzido em: v1.1.0 Retorna um array vazio de DateTime Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array DateTime vazio. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayFloat32

Introduzido em: v1.1.0 Retorna um array Float32 vazio Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de Float32. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayFloat64

Introduzido em: v1.1.0 Retorna um array Float64 vazio Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de Float64. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayInt16

Introduzido em: v1.1.0 Retorna um array(Int16) vazio Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array Int16 vazio. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayInt32

Introduzido em: v1.1.0 Retorna um array Int32 vazio Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de Int32. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayInt64

Introduzido em: v1.1.0 Retorna um array Int64 vazio Sintaxe
Argumentos
  • Nenhum.
Valor de retorno Um array Int64 vazio. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayInt8

Introduzido em: v1.1.0 Retorna um array(Int8) vazio Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de Int8. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayString

Introduzido em: v1.1.0 Retorna um array vazio de String Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de String. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayToSingle

Introduzido em: v1.1.0 Aceita um array vazio e retorna um array com um único elemento, igual ao valor padrão. Sintaxe
Argumentos Valor retornado Um array com um único valor do tipo padrão do Array. Array(T) Exemplos Exemplo básico
Query
Response

emptyArrayUInt16

Introduzido em: v1.1.0 Retorna um array vazio de UInt16 Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de UInt16. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayUInt32

Introduzido em: v1.1.0 Retorna um array vazio de UInt32 Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array vazio de UInt32. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayUInt64

Introduzido em: v1.1.0 Retorna um array vazio de UInt64 Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array UInt64 vazio. Array(T) Exemplos Exemplo de uso
Query
Response

emptyArrayUInt8

Introduzido em: v1.1.0 Retorna um array UInt8 vazio Sintaxe
Argumentos
  • Nenhum.
Valor retornado Um array UInt8 vazio. Array(T) Exemplos Exemplo de uso
Query
Response

has

Introduzido em: v1.1.0 Retorna se o array contém o elemento especificado, se o map contém a chave especificada ou se o objeto JSON contém o caminho especificado. Para JSON, há suporte a caminhos aninhados usando notação de ponto (por exemplo, ‘a.b.c’). Quando o primeiro argumento é um array constante e o segundo argumento é uma coluna ou expressão, has(constant_array, column) se comporta como column IN (constant_array) e pode usar a chave primária e índices de data-skipping para otimização. Por exemplo, has([1, 10, 100], id) pode usar o índice da chave primária se id fizer parte da PRIMARY KEY. Essa otimização também se aplica quando a coluna é encapsulada em funções monotônicas (por exemplo, has([...], toDate(ts))). Sintaxe
Argumentos
  • haystack — O array, map ou JSON de origem. Array ou Map ou JSON
  • needle — O valor a ser procurado (elemento no array, chave no map ou string de caminho no JSON).
Valor retornado Retorna 1 se o haystack contiver o needle especificado; caso contrário, 0. UInt8 Exemplos Uso básico de Array
Query
Response
Array não encontrado
Query
Response
Uso básico do map
Query
Response
Caminho JSON
Query
Response

hasAll

Introduzido em: v1.1.0 Verifica se um array é subconjunto de outro array.
  • Um array vazio é subconjunto de qualquer array.
  • NULL é processado como um valor.
  • A ordem dos valores em ambos os arrays não importa.
Sintaxe
Argumentos
  • set — Array de qualquer tipo com um conjunto de elementos. Array(T)
  • subset — Array de qualquer tipo que compartilha um supertipo comum com set, contendo elementos que devem ser verificados para determinar se são um subconjunto de set. Array(T)
Valor retornado
  • 1, se set contiver todos os elementos de subset.
  • 0, caso contrário.
Gera uma exceção NO_COMMON_TYPE se os elementos de set e subset não compartilharem um supertipo comum. Exemplos Arrays vazios
Query
Response
Arrays com valores NULL
Query
Response
Arrays com valores de um tipo diferente
Query
Response
Arrays com valores String
Query
Response
Arrays sem um tipo em comum
Query
Response
Array de arrays
Query
Response

hasAny

Introduzido em: v1.1.0 Verifica se dois arrays têm algum elemento em comum.
  • Null é processado como um valor.
  • A ordem dos valores em ambos os arrays não importa.
Sintaxe
Argumentos
  • arr_x — Array de qualquer tipo com um conjunto de elementos. Array(T)
  • arr_y — Array de qualquer tipo que tenha um supertipo comum com o array arr_x. Array(T)
Valor retornado
  • 1, se arr_x e arr_y tiverem pelo menos um elemento em comum.
  • 0, caso contrário.
Gera uma exceção NO_COMMON_TYPE se algum dos elementos dos dois arrays não tiver um supertipo comum. Exemplos Um array está vazio
Query
Response
Arrays com valores NULL
Query
Response
Arrays que contêm valores de tipos diferentes
Query
Response
Arrays sem um tipo em comum
Query
Response
Array de Arrays
Query
Response

hasSubstr

Introduzido em: v20.6.0 Verifica se todos os elementos de array2 aparecem em array1 exatamente na mesma ordem. Portanto, a função retornará 1 se, e somente se, array1 = prefixo + array2 + sufixo. Em outras palavras, a função verifica se todos os elementos de array2 estão contidos em array1, como na função hasAll. Além disso, verifica se os elementos aparecem na mesma ordem em array1 e array2.
  • A função retornará 1 se array2 estiver vazio.
  • NULL é processado como um valor. Em outras palavras, hasSubstr([1, 2, NULL, 3, 4], [2,3]) retornará 0. No entanto, hasSubstr([1, 2, NULL, 3, 4], [2,NULL,3]) retornará 1
  • A ordem dos valores em ambos os arrays importa.
Gera uma exceção NO_COMMON_TYPE se algum elemento dos dois arrays não tiver um supertipo comum. Sintaxe
Argumentos
  • arr1 — Array de qualquer tipo com um conjunto de elementos. Array(T)
  • arr2 — Array de qualquer tipo com um conjunto de elementos. Array(T)
Valor retornado Retorna 1 se o array arr1 contiver o array arr2. Caso contrário, retorna 0. UInt8 Exemplos Ambos os arrays estão vazios
Query
Response
Arrays com valores NULL
Query
Response
Arrays com valores de um tipo diferente
Query
Response
Arrays com strings
Query
Response
Arrays com ordem válida
Query
Response
Arrays com ordenação inválida
Query
Response
Array de arrays
Query
Response
Arrays sem tipo comum
Query
Response

indexOf

Introduzido em: v1.1.0 Retorna o índice do primeiro elemento com valor ‘x’ (a partir de 1), se ele estiver no array. Se o array não contiver o valor pesquisado, a função retorna 0. Elementos definidos como NULL são tratados como valores normais. Sintaxe
Argumentos
  • arr — Um array no qual buscar x. Array(T)
  • x — Valor do primeiro elemento em arr correspondente a x cujo índice deve ser retornado. UInt64
Valor retornado Retorna o índice (numerado a partir de 1) da primeira ocorrência de x em arr, se existir. Caso contrário, retorna 0. UInt64 Exemplos Exemplo básico
Query
Response
Array com valores NULL
Query
Response

indexOfAssumeSorted

Introduzido em: v24.12.0 Retorna o índice do primeiro elemento com valor ‘x’ (a partir de 1) se ele estiver no array. Se o array não contiver o valor pesquisado, a função retornará 0.
Ao contrário da função indexOf, esta função pressupõe que o array está ordenado em ordem crescente. Se o array não estiver ordenado, os resultados serão indefinidos.
Sintaxe
Argumentos
  • arr — Um array ordenado no qual será feita a busca. Array(T)
  • x — Valor do primeiro elemento correspondente em arr ordenado cujo índice deve ser retornado. UInt64
Valor retornado Retorna o índice (contado a partir de um) da primeira ocorrência de x em arr, se ela existir. Caso contrário, retorna 0. UInt64 Exemplos Exemplo básico
Query
Response

kql_array_sort_asc

Introduzido em: v23.10.0 Ordena um ou mais arrays em ordem crescente. O primeiro array é ordenado, e os arrays subsequentes são reorganizados para seguir a ordem do primeiro array após a ordenação. Os valores NULL são colocados no final. Esta é uma função de compatibilidade com KQL (Kusto Query Language). Sintaxe
Argumentos
  • array1 — O array a ser ordenado. Array(T)
  • array2 — Opcional. Arrays adicionais a serem reordenados de acordo com a ordenação de array1. Array(T)
  • nulls_last — Opcional. Um valor booleano que indica se os valores NULL devem aparecer por último. O padrão é true. UInt8
Valor retornado Retorna uma tupla de arrays ordenados em ordem crescente. Tuple(Array, ...) Exemplos Uso básico
Query
Response

kql_array_sort_desc

Introduzido em: v23.10.0 Ordena um ou mais arrays em ordem decrescente. O primeiro array é ordenado, e os arrays subsequentes são reordenados para corresponder à ordem do primeiro array após a ordenação. Os valores NULL são colocados no final. Esta é uma função de compatibilidade com KQL (Kusto Query Language). Sintaxe
Argumentos
  • array1 — O array a ser ordenado. Array(T)
  • array2 — Arrays adicionais opcionais a serem reordenados de acordo com a ordem de array1. Array(T)
  • nulls_last — Booleano opcional que indica se os valores nulos devem aparecer por último. O padrão é true. UInt8
Valor retornado Retorna uma tupla de arrays ordenados em ordem decrescente. Tuple(Array, ...) Exemplos Uso básico
Query
Response

length

Introduzido em: v1.1.0 Calcula o comprimento de uma string ou array.
  • Para argumentos String ou FixedString: calcula o número de bytes da string.
  • Para argumentos Array: calcula o número de elementos do array.
  • Se aplicada a um argumento FixedString, a função é uma expressão constante.
Observe que o número de bytes em uma string não é o mesmo que o número de “pontos de código” Unicode, nem o mesmo que o número de “clusters de grafemas” Unicode (o que normalmente chamamos de “caracteres”), nem o mesmo que a largura visível da string. Não há problema em haver bytes NULL ASCII em strings, e eles também serão contados. Sintaxe
Aliases: OCTET_LENGTH Argumentos
  • x — Valor para o qual se calcula o número de bytes (para String/FixedString) ou de elementos (para Array). String ou FixedString ou Array(T)
Valor retornado Retorna o número de bytes na String/FixedString x / o número de elementos no array x UInt64 Exemplos Exemplo com String
Query
Response
Exemplo de Array
Query
Response
exemplo de constexpr
Query
Response
exemplo de Unicode
Query
Response
exemplo de ascii_vs_utf8
Query
Response

notEmpty

Introduzido em: v1.1.0 Verifica se o array de entrada não está vazio. Um array é considerado não vazio se contiver pelo menos um elemento.
Pode ser otimizada ativando a configuração optimize_functions_to_subcolumns. Com optimize_functions_to_subcolumns = 1, a função lê apenas a subcoluna size0, em vez de ler e processar toda a coluna do tipo array. A consulta SELECT notEmpty(arr) FROM table é transformada em SELECT arr.size0 != 0 FROM TABLE.
A função também funciona com Strings ou UUIDs. Sintaxe
Argumentos Valor retornado Retorna 1 para um array não vazio ou 0 para um array vazio UInt8 Exemplos Exemplo de uso
Query
Response

range

Introduzido em: v1.1.0 Retorna um array de números de start até end - 1, com passo step. Os tipos compatíveis são:
  • UInt8/16/32/64
  • Int8/16/32/64]
  • Todos os argumentos start, end e step devem ser de um dos tipos compatíveis acima. Os elementos do array retornado serão de um supertipo dos argumentos.
  • É lançada uma exceção se a função retornar um array com comprimento total maior que o número de elementos especificado pela configuração function_range_max_elements_in_block.
  • Retorna NULL se algum argumento tiver o tipo Nullable(nothing). É lançada uma exceção se algum argumento tiver o valor NULL (tipo Nullable(T)).
Sintaxe
Argumentos
  • start — Opcional. O primeiro elemento do array. Obrigatório se step for usado. Valor padrão: 0. - end — Obrigatório. O número-limite antes do qual o array é construído. - step — Opcional. Determina o passo entre cada elemento do array. Valor padrão: 1.
Valor retornado Array de números de start a end - 1, com passo step. Array(T) Exemplos Exemplo de uso
Query
Response

replicate

Introduzido em: v1.1.0 Cria um array com um único valor. Sintaxe
Argumentos
  • x — O valor usado para preencher o array de resultado. Any
  • arr — Um array. Array(T)
Valor retornado Retorna um array com o mesmo tamanho de arr, preenchido com o valor x. Array(T) Exemplos Exemplo de uso
Query
Response

reverse

Introduzido em: v1.1.0 Inverte a ordem dos elementos da array de entrada ou dos caracteres da string de entrada. Sintaxe
Argumentos Valor retornado Retorna um array ou uma string com a ordem dos elementos ou dos caracteres invertida. Exemplos Inverter um array
Query
Response
Inverter string
Query
Response

Funções de distância

Todas as funções suportadas estão descritas na documentação sobre funções de distância.
Última modificação em 19 de junho de 2026