

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Cláusula VALUES
<a name="VALUES"></a>

A cláusula VALUES é usada para fornecer um conjunto de valores de linha diretamente na consulta, sem a necessidade de referenciar uma tabela. 

A cláusula VALUES pode ser usada nos seguintes cenários:
+ Você pode usar a cláusula VALUES em uma instrução INSERT INTO para especificar os valores das novas linhas que estão sendo inseridas em uma tabela.
+ Você pode usar a cláusula VALUES sozinha para criar um conjunto de resultados temporário ou uma tabela embutida, sem a necessidade de referenciar uma tabela.
+ Você pode combinar a cláusula VALUES com outras cláusulas SQL, como WHERE, ORDER BY ou LIMIT, para filtrar, classificar ou limitar as linhas no conjunto de resultados.

Essa cláusula é particularmente útil quando você precisa inserir, consultar ou manipular um pequeno conjunto de dados diretamente na instrução SQL, sem a necessidade de criar ou referenciar uma tabela permanente. Ele permite que você defina os nomes das colunas e os valores correspondentes para cada linha, oferecendo a flexibilidade de criar conjuntos de resultados temporários ou inserir dados dinamicamente, sem a sobrecarga de gerenciar uma tabela separada.

## Sintaxe
<a name="VALUES-syntax"></a>

```
VALUES ( expression [ , ... ] ) [ table_alias ]
```

## Parâmetros
<a name="VALUES-parameters"></a>

 *expressão*   
Uma expressão que especifica uma combinação de um ou mais valores, operadores e funções SQL que resulta em um valor.

 *apelido de tabela*   
Um alias que especifica um nome temporário com uma lista opcional de nomes de colunas.

## Exemplo
<a name="VALUES-example"></a>

O exemplo a seguir cria uma tabela embutida, um conjunto de resultados temporário semelhante a uma tabela com duas colunas e. `col1` `col2` A única linha no conjunto de resultados contém os valores `"one"` e`1`, respectivamente. A `SELECT * FROM` parte da consulta simplesmente recupera todas as colunas e linhas desse conjunto de resultados temporário. Os nomes das colunas (`col1`e`col2`) são gerados automaticamente pelo sistema de banco de dados, porque a cláusula VALUES não especifica explicitamente os nomes das colunas. 

```
SELECT * FROM VALUES ("one", 1);
+----+----+
|col1|col2|
+----+----+
| one|   1|
+----+----+
```

Se quiser definir nomes de colunas personalizados, você pode fazer isso usando uma cláusula AS após a cláusula VALUES, assim:

```
SELECT * FROM (VALUES ("one", 1)) AS my_table (name, id);
+------+----+
| name | id |
+------+----+
| one  |  1 |
+------+----+
```

Isso criaria um conjunto de resultados temporário com os nomes das colunas `name` e`id`, em vez do padrão `col1` `col2` e. 