system.columns
カラムに関する情報をすべてのテーブルから取得できます。
このテーブルを使用して、複数のテーブルに対して同時に情報を取得できる DESCRIBE TABLE クエリと類似の情報を得ることができます。
一時テーブルのカラムは、作成されたセッションでのみ system.columns に表示されます。これらは空の database フィールドで示されます。
system.columns テーブルには以下のカラムが含まれています(カラムタイプは括弧内に示されています):
database(String) — データベース名。table(String) — テーブル名。name(String) — カラム名。type(String) — カラムタイプ。position(UInt64) — テーブルにおけるカラムの序列位置(1から始まる)。default_kind(String) — デフォルト値の式タイプ(DEFAULT、MATERIALIZED、ALIAS)、未定義の場合は空文字列。default_expression(String) — デフォルト値の式、未定義の場合は空文字列。data_compressed_bytes(UInt64) — 圧縮データのサイズ(バイト単位)。data_uncompressed_bytes(UInt64) — 非圧縮データのサイズ(バイト単位)。marks_bytes(UInt64) — マークのサイズ(バイト単位)。comment(String) — カラムに関するコメント、未定義の場合は空文字列。is_in_partition_key(UInt8) — カラムがパーティション式に含まれているかどうかを示すフラグ。is_in_sorting_key(UInt8) — カラムがソートキー式に含まれているかどうかを示すフラグ。is_in_primary_key(UInt8) — カラムが主キー式に含まれているかどうかを示すフラグ。is_in_sampling_key(UInt8) — カラムがサンプリングキー式に含まれているかどうかを示すフラグ。compression_codec(String) — 圧縮コーデックの名前。character_octet_length(Nullable(UInt64)) — バイナリデータ、文字データ、テキストデータ、画像の最大長(バイト単位)。ClickHouseではFixedStringデータタイプに対してのみ意味を持ちます。それ以外の場合はNULL値が返されます。numeric_precision(Nullable(UInt64)) — おおよその数値データ、正確な数値データ、整数データ、または金銭データの精度。ClickHouseでは整数タイプのビット幅とDecimalタイプの小数精度です。それ以外の場合はNULL値が返されます。numeric_precision_radix(Nullable(UInt64)) — おおよその数値データ、正確な数値データ、整数データ、または金銭データの精度を表す数値システムの基数。ClickHouseでは整数タイプには 2、Decimalタイプには 10 が対応します。それ以外の場合はNULL値が返されます。numeric_scale(Nullable(UInt64)) — おおよその数値データ、正確な数値データ、整数データ、または金銭データのスケール。ClickHouseではDecimalタイプに対してのみ意味を持ちます。それ以外の場合はNULL値が返されます。datetime_precision(Nullable(UInt64)) —DateTime64データタイプの小数精度。その他のデータタイプではNULL値が返されます。
例