Описание
Содержит сведения о столбцах всех таблиц.
Эту таблицу можно использовать, чтобы получить сведения, аналогичные результату запроса DESCRIBE TABLE, но сразу для нескольких таблиц.
Столбцы из временных таблиц видны в system.columns только в том сеансе, в котором они были созданы. Они отображаются с пустым полем database.
Столбцы
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 для целочисленных типов и 10 для типов Decimal. В остальных случаях возвращается значение NULL.numeric_scale(Nullable(UInt64)) — Масштаб приблизительных или точных числовых, целочисленных либо денежных данных. В ClickHouse применимо только к типам Decimal. В остальных случаях возвращается значение NULL.datetime_precision(Nullable(UInt64)) — Десятичная точность типа данных DateTime64. Для других типов данных возвращается значение NULL.serialization_hint(Nullable(String)) — Подсказка для выбора сериализации столбца при вставке на основе статистики.statistics(String) — Типы статистики, созданной для этого столбца.
Псевдонимы:
column— Псевдоним дляname.
Пример
SELECT * FROM system.columns LIMIT 2 FORMAT Vertical;Row 1:
──────
database: INFORMATION_SCHEMA
table: COLUMNS
name: table_catalog
type: String
position: 1
default_kind:
default_expression:
data_compressed_bytes: 0
data_uncompressed_bytes: 0
marks_bytes: 0
comment:
is_in_partition_key: 0
is_in_sorting_key: 0
is_in_primary_key: 0
is_in_sampling_key: 0
compression_codec:
character_octet_length: ᴺᵁᴸᴸ
numeric_precision: ᴺᵁᴸᴸ
numeric_precision_radix: ᴺᵁᴸᴸ
numeric_scale: ᴺᵁᴸᴸ
datetime_precision: ᴺᵁᴸᴸ
Row 2:
──────
database: INFORMATION_SCHEMA
table: COLUMNS
name: table_schema
type: String
position: 2
default_kind:
default_expression:
data_compressed_bytes: 0
data_uncompressed_bytes: 0
marks_bytes: 0
comment:
is_in_partition_key: 0
is_in_sorting_key: 0
is_in_primary_key: 0
is_in_sampling_key: 0
compression_codec:
character_octet_length: ᴺᵁᴸᴸ
numeric_precision: ᴺᵁᴸᴸ
numeric_precision_radix: ᴺᵁᴸᴸ
numeric_scale: ᴺᵁᴸᴸ
datetime_precision: ᴺᵁᴸᴸ