Табличные функции — это способы создания таблиц.
Использование
Табличные функции можно использовать в секции FROM
запроса SELECT. Например, с помощью табличной функции file можно выполнить SELECT данных из файла на локальном
компьютере.
echo "1, 2, 3" > example.csv./clickhouse client
:) SELECT * FROM file('example.csv')
┌─c1─┬─c2─┬─c3─┐
│ 1 │ 2 │ 3 │
└────┴────┴────┘Вы также можете использовать табличные функции для создания временной таблицы, доступной только в рамках текущего запроса. Например:
SELECT * FROM generateSeries(1,5);┌─generate_series─┐
│ 1 │
│ 2 │
│ 3 │
│ 4 │
│ 5 │
└─────────────────┘Таблица удаляется после завершения запроса.
Табличные функции можно использовать для создания таблиц со следующим синтаксисом:
CREATE TABLE [IF NOT EXISTS] [db.]table_name AS table_function()Например:
CREATE TABLE series AS generateSeries(1, 5);
SELECT * FROM series;┌─generate_series─┐
│ 1 │
│ 2 │
│ 3 │
│ 4 │
│ 5 │
└─────────────────┘Наконец, табличные функции можно использовать для INSERT в таблицу. Например,
мы можем снова использовать табличную функцию file, чтобы записать содержимое таблицы,
которую создали в предыдущем примере, в файл на диске:
INSERT INTO FUNCTION file('numbers.csv', 'CSV') SELECT * FROM series;cat numbers.csv
1
2
3
4
5