Skip to main content
このエンジンでは、SQLite との間でデータをインポートおよびエクスポートできるほか、ClickHouse から SQLite のテーブルに対して直接クエリを実行できます。

テーブルの作成

エンジンパラメータ
  • db_path — データベースを含む SQLite ファイルへのパス。
  • table — SQLite データベース内のテーブル名、またはそのまま SQLite に渡されるクエリ (テーブル名の代わりにクエリを渡す を参照) 。

テーブル名の代わりにクエリを渡す

テーブル名の代わりに、table 引数には、そのまま SQLite に渡される SELECT クエリを指定できます。テーブルの構造はクエリ結果から推論されます。クエリは、サブクエリとして記述することも、query 関数でラップすることもできます。
このようなテーブルは読み取り専用で、これに対する INSERT は許可されていません。同じ構文は、sqlite テーブル関数でもサポートされています。
サブクエリ形式 (SELECT ...) は ClickHouse によって解析され、SQLite に送信される前に再シリアライズされます。そのため、有効な ClickHouse SQL である必要があります。ClickHouse が解析しない SQLite 固有の構文を渡すには、query('...') 形式を使用してください。この形式では、テキストがそのまま SQLite に送信されます。周囲の ClickHouse クエリにある外側の WHERELIMIT、集約などは、渡したクエリには プッシュダウンされず、完全なクエリ結果を取得した後に ClickHouse で適用されます。SQLite から読み取るデータを制限するには、渡すクエリの中にフィルターを含めてください。external_table_strict_query = 1 を指定すると、プッシュダウンできない外側のフィルターはローカルで適用される代わりに、例外を返して拒否されます。

サポートされるデータ型

テーブル定義で ClickHouse のカラム型を明示的に指定すると、SQLite の TEXT カラムから以下の ClickHouse 型をパースできます。 デフォルトの型マッピングについては、SQLite データベースエンジン を参照してください。

使用例

SQLite のテーブルを作成するクエリを示します。
テーブルのデータを返します:
関連項目
最終更新日 2026年7月24日