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 が返される。serialization_hint(Nullable(String)) — 統計に基づいて挿入時のシリアル化方法を選択するための、カラムに対するヒント。statistics(String) — このカラムで作成された統計情報の種類。
例