Перейти к основному содержимому
Перейти к основному содержимому

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 для целочисленных типов и 10 для типов Decimal. В противном случае возвращается значение NULL.
  • numeric_scale (Nullable(UInt64)) — Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В ClickHouse имеет смысл только для типов Decimal. В противном случае возвращается значение NULL.
  • datetime_precision (Nullable(UInt64)) — Десятичная точность типа данных DateTime64. Для других типов данных возвращается значение NULL.

Пример