system.columns
Содержит информацию о столбцах всех таблиц.
С помощью этой таблицы можно получить информацию аналогично запросу DESCRIBE TABLE, но для многих таблиц сразу.
Колонки временных таблиц содержатся в system.columns
только в тех сессиях, в которых эти таблицы были созданы. Поле database
у таких колонок пустое.
Cтолбцы:
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
.
Пример