Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Fonctions de table

Les fonctions de table permettent de construire des tables.

Utilisation

Les fonctions de table peuvent être utilisées dans la clause FROM d’une requête SELECT. Par exemple, vous pouvez SELECT des données depuis un fichier situé sur votre machine locale à l’aide de la fonction de table file.

Querybash
echo "1, 2, 3" > example.csv
Responsetext
./clickhouse client
:) SELECT * FROM file('example.csv')
┌─c1─┬─c2─┬─c3─┐
│  1 │  2 │  3 │
└────┴────┴────┘

Vous pouvez également utiliser des fonctions de table pour créer une table temporaire accessible uniquement pendant la requête en cours. Par exemple :

Querysql
SELECT * FROM generateSeries(1,5);
Responseresponse
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘

La table est supprimée lorsque la requête se termine.

Les fonctions de table peuvent servir à créer des tables, selon la syntaxe suivante :

Querysql
CREATE TABLE [IF NOT EXISTS] [db.]table_name AS table_function()

Par exemple :

Querysql
CREATE TABLE series AS generateSeries(1, 5);
SELECT * FROM series;
Responseresponse
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘

Enfin, les fonctions de table peuvent être utilisées pour INSERT des données dans une table. Par exemple, nous pourrions écrire le contenu de la table que nous avons créée dans l’exemple précédent dans un fichier sur disque en utilisant à nouveau la fonction de table file :

Querysql
INSERT INTO FUNCTION file('numbers.csv', 'CSV') SELECT * FROM series;
Querybash
cat numbers.csv
1
2
3
4
5
Navigation