> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-8c05c8a2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> crée un stockage temporaire dont les colonnes sont remplies de valeurs.

# values

La fonction de table `Values` vous permet de créer un stockage temporaire dont les
colonnes sont remplies de valeurs. Elle est utile pour effectuer des tests rapides ou générer des données d’exemple.

<Note>
  Values est une fonction insensible à la casse. Autrement dit, `VALUES` et `values` sont tous les deux valides.
</Note>

<div id="syntax">
  ## Syntaxe
</div>

La syntaxe de base de la fonction de table `VALUES` est la suivante :

```sql theme={null}
VALUES([structure,] values...)
```

Il s’utilise généralement comme suit :

```sql theme={null}
VALUES(
    ['column1_name Type1, column2_name Type2, ...'],
    (value1_row1, value2_row1, ...),
    (value1_row2, value2_row2, ...),
    ...
)
```

<div id="arguments">
  ## Arguments
</div>

* `column1_name Type1, ...` (facultatif). [String](/fr/reference/data-types/string)
  indiquant les noms et les types des colonnes. Si cet argument est omis, les colonnes seront
  nommées `c1`, `c2`, etc.
* `(value1_row1, value2_row1)`. [Tuples](/fr/reference/data-types/tuple)
  contenant des valeurs de n’importe quel type.

<Note>
  Les tuples séparés par des virgules peuvent également être remplacés par des valeurs individuelles. Dans ce cas,
  chaque valeur est interprétée comme une nouvelle ligne. Consultez la section [exemples](#examples) pour plus de
  détails.
</Note>

<div id="returned-value">
  ## Valeur renvoyée
</div>

* Renvoie une table temporaire contenant les valeurs spécifiées.

<div id="examples">
  ## Exemples
</div>

```sql title="Query" theme={null}
SELECT *
FROM VALUES(
    'person String, place String',
    ('Noah', 'Paris'),
    ('Emma', 'Tokyo'),
    ('Liam', 'Sydney'),
    ('Olivia', 'Berlin'),
    ('Ilya', 'London'),
    ('Sophia', 'London'),
    ('Jackson', 'Madrid'),
    ('Alexey', 'Amsterdam'),
    ('Mason', 'Venice'),
    ('Isabella', 'Prague')
)
```

```response title="Response" theme={null}
    ┌─person───┬─place─────┐
 1. │ Noah     │ Paris     │
 2. │ Emma     │ Tokyo     │
 3. │ Liam     │ Sydney    │
 4. │ Olivia   │ Berlin    │
 5. │ Ilya     │ London    │
 6. │ Sophia   │ London    │
 7. │ Jackson  │ Madrid    │
 8. │ Alexey   │ Amsterdam │
 9. │ Mason    │ Venice    │
10. │ Isabella │ Prague    │
    └──────────┴───────────┘
```

`VALUES` peut également être utilisé avec des valeurs simples plutôt qu’avec des tuples. Par exemple :

```sql title="Query" theme={null}
SELECT *
FROM VALUES(
    'person String',
    'Noah',
    'Emma',
    'Liam',
    'Olivia',
    'Ilya',
    'Sophia',
    'Jackson',
    'Alexey',
    'Mason',
    'Isabella'
)
```

```response title="Response" theme={null}
    ┌─person───┐
 1. │ Noah     │
 2. │ Emma     │
 3. │ Liam     │
 4. │ Olivia   │
 5. │ Ilya     │
 6. │ Sophia   │
 7. │ Jackson  │
 8. │ Alexey   │
 9. │ Mason    │
10. │ Isabella │
    └──────────┘
```

Ou sans fournir de spécification de ligne (`'column1_name Type1, column2_name Type2, ...'`
dans la [syntaxe](#syntax)), les colonnes étant alors nommées automatiquement.

Par exemple :

```sql title="Query" theme={null}
-- tuples as values
SELECT *
FROM VALUES(
    ('Noah', 'Paris'),
    ('Emma', 'Tokyo'),
    ('Liam', 'Sydney'),
    ('Olivia', 'Berlin'),
    ('Ilya', 'London'),
    ('Sophia', 'London'),
    ('Jackson', 'Madrid'),
    ('Alexey', 'Amsterdam'),
    ('Mason', 'Venice'),
    ('Isabella', 'Prague')
)
```

```response title="Response" theme={null}
    ┌─c1───────┬─c2────────┐
 1. │ Noah     │ Paris     │
 2. │ Emma     │ Tokyo     │
 3. │ Liam     │ Sydney    │
 4. │ Olivia   │ Berlin    │
 5. │ Ilya     │ London    │
 6. │ Sophia   │ London    │
 7. │ Jackson  │ Madrid    │
 8. │ Alexey   │ Amsterdam │
 9. │ Mason    │ Venice    │
10. │ Isabella │ Prague    │
    └──────────┴───────────┘
```

```sql title="Query" theme={null}
-- single values
SELECT *
FROM VALUES(
    'Noah',
    'Emma',
    'Liam',
    'Olivia',
    'Ilya',
    'Sophia',
    'Jackson',
    'Alexey',
    'Mason',
    'Isabella'
)
```

```response title="Response" theme={null}
    ┌─c1───────┐
 1. │ Noah     │
 2. │ Emma     │
 3. │ Liam     │
 4. │ Olivia   │
 5. │ Ilya     │
 6. │ Sophia   │
 7. │ Jackson  │
 8. │ Alexey   │
 9. │ Mason    │
10. │ Isabella │
    └──────────┘
```

<div id="sql-standard-values-clause">
  ## Clause VALUES standard SQL
</div>

À partir de la version 26.3, ClickHouse prend également en charge la clause `VALUES` standard SQL en tant qu'expression de table
dans `FROM`, comme dans PostgreSQL, MySQL, DuckDB et SQL Server. Cette syntaxe est
réécrite en interne pour utiliser la fonction de table `values` décrite ci-dessus.

```sql title="Query" theme={null}
SELECT * FROM (VALUES (1, 'a'), (2, 'b'), (3, 'c')) AS t(id, val);
```

```response title="Response" theme={null}
┌─id─┬─val─┐
│  1 │ a   │
│  2 │ b   │
│  3 │ c   │
└────┴─────┘
```

Il peut être utilisé dans des CTE :

```sql title="Query" theme={null}
WITH cte AS (SELECT * FROM (VALUES (1, 'one'), (2, 'two')) AS t(id, name))
SELECT * FROM cte;
```

Et dans les clauses JOIN :

```sql title="Query" theme={null}
SELECT t1.id, t1.val, t2.val2
FROM (VALUES (1, 'a'), (2, 'b')) AS t1(id, val)
JOIN (VALUES (1, 'x'), (2, 'y')) AS t2(id, val2) ON t1.id = t2.id;
```

<Note>
  Les alias de colonnes après `AS t(col1, col2, ...)` suivent la syntaxe SQL standard pour
  nommer les colonnes des tables dérivées. S’ils sont omis, les colonnes sont nommées `c1`, `c2`, etc.
</Note>

<div id="see-also">
  ## Voir aussi
</div>

* [format Values](/fr/reference/formats/Values)
