| ページ | 説明 |
|---|---|
| azureBlobStorage | Azure Blob Storage 内のファイルに対して選択や挿入を行うためのテーブル形式インターフェイスを提供します。s3 function に似ています。 |
| azureBlobStorageCluster | 指定したクラスター内の多数のノードで Azure Blob Storage のファイルを並列処理できます。 |
| clusterAllReplicas | Distributed テーブルを作成せずに、クラスターのすべての分片 (remote_servers セクションで設定) にアクセスできます。 |
| deltaLake | Amazon S3 内の Delta Lake テーブルに対する読み取り専用のテーブル形式インターフェイスを提供します。 |
| deltaLakeCluster | deltaLake テーブル関数の拡張です。 |
| dictionary | Dictionary データを ClickHouse テーブルとして表示します。Dictionary engine と同様に動作します。 |
| executable | executable テーブル関数は、stdout に行を出力するスクリプト内で定義した user-defined function (UDF) の出力に基づいてテーブルを作成します。 |
| file | s3 table function と同様に、ファイルに対する SELECT や INSERT のためのテーブル形式インターフェイスを提供するテーブルエンジンです。ローカルファイルを扱う場合は file() を、S3、GCS、MinIO などのオブジェクトストレージ内の bucket を扱う場合は s3() を使用します。 |
| fileCluster | クラスター内の複数ノードで、指定した path に一致するファイルを同時に処理できます。イニシエーターが worker ノードへの接続を確立し、ファイル path 内の globs を展開して、ファイル読み取り task を worker ノードに委譲します。各 worker ノードは次に処理するファイルをイニシエーターに問い合わせ、すべての task が完了するまで (すべてのファイルが読み取られるまで) これを繰り返します。 |
| filesystem | ファイルシステムへのアクセスを提供し、ファイルの一覧表示とそのメタデータおよび内容の取得を行います。 |
| format | 指定された入力フォーマットに従って引数からデータを解析します。structure argument が指定されていない場合は、データから抽出されます。 |
| gcs | Google Cloud Storage からデータを SELECT および INSERT するためのテーブル形式インターフェイスを提供します。Storage Object User IAM role が必要です。 |
| fuzzQuery | 指定されたクエリ文字列にランダムな変化を加えます。 |
| fuzzJSON | JSON 文字列にランダムな変化を加えます。 |
| generateRandom | 指定されたスキーマでランダムデータを生成します。そのデータでテストテーブルを埋めることができます。サポートされていない型もあります。 |
| mergeTreeTextIndex | MergeTree テーブル内のテキスト索引の Dictionary を表します。イントロスペクションに使用できます。 |
| mergeTreeProjection | MergeTree テーブル内の一部の projection の内容を表します。イントロスペクションに使用できます。 |
| mergeTreeIndex | MergeTree テーブルの索引ファイルおよび marks ファイルの内容を表します。イントロスペクションに使用できます。 |
| hdfs | HDFS 内のファイルからテーブルを作成します。このテーブル関数は url および file テーブル関数に似ています。 |
| hdfsCluster | 指定したクラスター内の多数のノードで HDFS のファイルを並列処理できます。 |
| hudi | Amazon S3 内の Apache Hudi テーブルに対する読み取り専用のテーブル形式インターフェイスを提供します。 |
| ytsaurus | このテーブル関数では、YTsaurus クラスターからデータを読み取れます。 |
| hudiCluster Table Function | hudi テーブル関数の拡張です。指定したクラスター内の多数のノードで、Amazon S3 内の Apache Hudi テーブルのファイルを並列処理できます。 |
| iceberg | Amazon S3、Azure、HDFS、またはローカルに保存された Apache Iceberg テーブルに対する読み取り専用のテーブル形式インターフェイスを提供します。 |
| paimon | Amazon S3、Azure、HDFS、またはローカルに保存された Apache Paimon テーブルに対する読み取り専用のテーブル形式インターフェイスを提供します。 |
| icebergCluster | iceberg テーブル関数の拡張で、指定したクラスター内の多数のノードから Apache Iceberg のファイルを並列処理できます。 |
| paimonCluster | paimon テーブル関数の拡張で、指定したクラスター内の多数のノードから Apache Paimon のファイルを並列処理できます。 |
| input | 指定した structure で server に送信されたデータを、別の structure を持つテーブルへ効率的に変換して挿入できるテーブル関数です。 |
| jdbc | JDBC driver 経由で接続されたテーブルを返します。 |
| merge | 一時的な Merge テーブルを作成します。structure は、基になるテーブルのカラムのユニオンを使用し、共通の型を導出して決定されます。 |
| mongodb | リモートの MongoDB サーバーに保存されているデータに対して SELECT クエリを実行できます。 |
| mysql | リモートの MySQL サーバーに保存されているデータに対して SELECT および INSERT クエリを実行できます。 |
| null | Null table engine を使用して、指定した構造の一時テーブルを作成します。この関数は、テスト作成やデモのために使用されます。 |
| timeSeriesMetrics | timeSeriesMetrics は、table engine が TimeSeries engine のテーブル db_name.time_series_table で使用される Metrics テーブルを返します。 |
| timeSeriesSelector | セレクターで絞り込み、指定した interval 内の timestamps を持つ時系列を TimeSeries テーブルから読み取ります。 |
| timeSeriesTags | timeSeriesTags table function は、table engine が TimeSeries engine のテーブル db_name.time_series_table で使用される Tags テーブルを返します。 |
| prometheusQueryRange | TimeSeries テーブルのデータを使用して prometheus クエリを評価します。 |
| zeros | テスト用として、多数の行を生成する最速の method として使用されます。system.zeros および system.zeros_mt システムテーブルに似ています。 |
| primes | 素数を含む単一の prime カラムを持つテーブルを返します。 |
| timeSeriesData | timeSeriesData は、table engine が TimeSeries のテーブル db_name.time_series_table で使用される data テーブルを返します。 |
| numbers | 整数のシーケンスを含む単一の number カラムを持つテーブルを返します。 |
| prometheusQuery | TimeSeries テーブルのデータを使用して prometheus クエリを評価します。 |
| generate_series (generateSeries) | start から stop までの整数を両端を含めて格納する、単一の generate_series カラム (UInt64) を持つテーブルを返します。 |
| odbc | ODBC 経由で接続されたテーブルを返します。 |
| postgresql | リモートの PostgreSQL サーバーに保存されているデータに対して SELECT および INSERT クエリを実行できます。 |
| redis | この table function を使用すると、ClickHouse を Redis と統合できます。 |
| remote, remoteSecure | Table function remote を使用すると、その場でリモートサーバーにアクセスできます。つまり、分散テーブルを作成する必要がありません。Table function remoteSecure は remote と同じですが、セキュアな connection を使用します。 |
| s3 Table Function | Amazon S3 および Google Cloud Storage 内のファイルを select/insert するためのテーブル形式インターフェイスを提供します。この table function は hdfs 関数に似ていますが、S3 固有の機能を備えています。 |
| s3Cluster | s3 table function の拡張であり、指定したクラスター内の多数のノードで Amazon S3 および Google Cloud Storage のファイルを並列に processing できます。 |
| sqlite | SQLite データベースに保存されているデータに対してクエリを実行できます。 |
| arrowFlight | Apache Arrow Flight サーバー経由で公開されたデータに対してクエリを実行できます。 |
| url | 指定された format と structure を使用して URL からテーブルを作成します |
| urlCluster | 指定したクラスター内の多数のノードから、URL のファイルを並列に processing できます。 |
| view | サブクエリをテーブルに変換します。この関数はビューを実装します。 |
| values | 値でカラムを埋める一時ストレージを作成します。 |
| loop | ClickHouse の loop table function は、クエリ結果を無限ループで返すために使用されます。 |
使用方法
SELECTクエリのFROM
句で使用できます。たとえば、fileテーブル関数を使って、ローカル
マシン上のファイルからデータをSELECTできます。
Query
Response
Query
Response
Query
Query
Response
INSERT することもできます。たとえば、
前の例で作成したテーブルの内容を、
再度 file テーブル関数を使ってディスク上のファイルに書き出せます:
Query
Query
allow_ddl 設定が無効な場合、テーブル関数は使用できません。