Skip to main content
Движок позволяет импортировать данные из SQLite и экспортировать их в SQLite, а также выполнять запросы к таблицам SQLite напрямую из ClickHouse.

Создание таблицы

Параметры движка

Передача запроса вместо имени таблицы

Вместо имени таблицы в качестве аргумента table можно указать SELECT-запрос, который передаётся в SQLite как есть. Структура таблицы определяется по результату запроса. Запрос можно записать либо как подзапрос, либо обернуть в функцию query:
Такая таблица доступна только для чтения: операция INSERT в неё запрещена. Тот же синтаксис поддерживается табличной функцией sqlite.
Форма подзапроса (SELECT ...) разбирается ClickHouse и повторно сериализуется перед отправкой в SQLite. Поэтому она должна быть корректным ClickHouse SQL. Чтобы передать специфичный для SQLite синтаксис, который ClickHouse не разбирает, используйте форму query('...'), текст которой отправляется в SQLite дословно.Любые внешние WHERE, LIMIT, агрегирование и т. д. из окружающего запроса к ClickHouse не проталкиваются в передаваемый запрос — они применяются в ClickHouse после получения полного результата запроса. Чтобы ограничить объём данных, считываемых из SQLite, поместите фильтр внутрь передаваемого запроса. При external_table_strict_query = 1 внешний фильтр, который нельзя протолкнуть, приводит к исключению вместо того, чтобы применяться локально.

Поддержка типов данных

Если в определении таблицы явно указать типы столбцов ClickHouse, из столбцов SQLite TEXT можно разобрать следующие типы ClickHouse: Сопоставление типов по умолчанию см. в разделе движок базы данных SQLite.

Пример использования

Показан запрос на создание таблицы SQLite:
Возвращает данные из таблицы:
См. также
  • SQLite движок
  • sqlite табличная функция
Последнее изменение 24 июля 2026 г.