Pular para o conteúdo principal
A função de tabela Values permite criar um armazenamento temporário que preenche colunas com valores. Ela é útil para testes rápidos ou para gerar dados de exemplo.
Values é uma função que não diferencia maiúsculas de minúsculas. Ou seja, tanto VALUES quanto values são válidos.

Sintaxe

A sintaxe básica da função de tabela VALUES é:
Geralmente é usado como:

Argumentos

  • column1_name Type1, ... (opcional). String que especifica os nomes e os tipos das colunas. Se esse argumento for omitido, as colunas serão nomeadas como c1, c2 etc.
  • (value1_row1, value2_row1). Tuplas contendo valores de qualquer tipo.
Tuplas separadas por vírgula também podem ser substituídas por valores individuais. Nesse caso, cada valor é considerado uma nova linha. Consulte a seção de exemplos para mais detalhes.

Valor retornado

  • Retorna uma tabela temporária com os valores fornecidos.

Exemplos

Query
Response
VALUES também pode ser usado com valores individuais em vez de tuplas. Por exemplo:
Query
Response
Ou sem fornecer uma especificação de linha ('column1_name Type1, column2_name Type2, ...' na sintaxe), caso em que os nomes das colunas são atribuídos automaticamente. Por exemplo:
Query
Response
Query
Response

Cláusula VALUES do padrão SQL

A partir da versão 26.3, o ClickHouse também oferece suporte à cláusula VALUES padrão SQL como uma expressão de tabela em FROM, como ocorre no PostgreSQL, MySQL, DuckDB e SQL Server. Essa sintaxe é reescrita internamente para usar a função de tabela values descrita acima.
Query
Response
Pode ser usado em CTEs:
Query
E nas junções:
Query
Os aliases de coluna após AS t(col1, col2, ...) seguem a sintaxe SQL padrão para nomear as colunas de tabelas derivadas. Se forem omitidos, as colunas serão nomeadas c1, c2 etc.

Veja também

Última modificação em 19 de junho de 2026