Перейти к основному содержанию
Перейти к основному содержанию

Табличная функция loop

Синтаксис

SELECT ... FROM loop(database, table);
SELECT ... FROM loop(database.table);
SELECT ... FROM loop(table);
SELECT ... FROM loop(other_table_function(...));

Аргументы

АргументОписание
databaseимя базы данных.
tableимя таблицы.
other_table_function(...)другая табличная функция. Пример: SELECT * FROM loop(numbers(10)); здесь other_table_function(...) — это numbers(10).

Возвращаемые значения

Бесконечный цикл, возвращающий результаты запроса.

Примеры

Получение данных из ClickHouse:

SELECT * FROM loop(test_database, test_table);
SELECT * FROM loop(test_database.test_table);
SELECT * FROM loop(test_table);

Или с помощью других табличных функций:

SELECT * FROM loop(numbers(3)) LIMIT 7;
   ┌─number─┐
1. │      0 │
2. │      1 │
3. │      2 │
   └────────┘
   ┌─number─┐
4. │      0 │
5. │      1 │
6. │      2 │
   └────────┘
   ┌─number─┐
7. │      0 │
   └────────┘
SELECT * FROM loop(mysql('localhost:3306', 'test', 'test', 'user', 'password'));
...