Программирование

Как посмотреть структуру таблицы в ClickHouse

Разбираем команды ClickHouse для просмотра колонок, типов данных, комментариев, движка, ключей сортировки и других параметров таблицы.

2 мин чтенияОбновлено 3 ноября 2026 г. Задать свой вопрос

ВопросКак посмотреть структуру таблицы в ClickHouse: список колонок, типы данных, значения по умолчанию и комментарии? Какие команды показывают движок и ключи таблицы?

Коротко

Чтобы посмотреть структуру таблицы в ClickHouse, используйте DESCRIBE TABLE, SHOW CREATE TABLE или системные таблицы system.columns и system.tables. Выбор команды зависит от того, нужен ли краткий список полей или полное описание таблицы.

Содержание
  1. Быстрый просмотр колонок
  2. Полное определение таблицы
  3. Получение метаданных через system.columns
  4. Информация о таблице и её размере
  5. Что выбрать

Быстрый просмотр колонок

Команда DESCRIBE TABLE показывает основные свойства столбцов:

DESCRIBE TABLE database_name.table_name;

Также можно использовать сокращённую форму:

DESC database_name.table_name;

В результате обычно доступны следующие сведения:

  • name — название колонки;
  • type — тип данных, например UInt64, String, DateTime;
  • default_type — тип выражения по умолчанию;
  • default_expression — значение или выражение по умолчанию;
  • comment — комментарий к колонке.

Если база данных указана в текущем контексте, её можно не писать:

DESCRIBE TABLE table_name;

Полное определение таблицы

Для просмотра SQL-команды создания таблицы используйте:

SHOW CREATE TABLE database_name.table_name;

Эта команда помогает узнать не только колонки и их комментарии, но и параметры таблицы:

  • используемый движок (MergeTree, ReplacingMergeTree и другие);
  • ORDER BY и PRIMARY KEY;
  • PARTITION BY;
  • TTL и настройки хранения;
  • кодеки сжатия;
  • параметры таблицы и выражения по умолчанию.

SHOW CREATE TABLE особенно удобна, если структуру нужно скопировать или восстановить в другой базе данных.

Получение метаданных через system.columns

Для автоматической обработки структуры используйте системную таблицу system.columns:

SELECT
    name,
    type,
    default_type,
    default_expression,
    comment,
    compression_codec,
    is_in_primary_key
FROM system.columns
WHERE database = 'database_name'
  AND table = 'table_name'
ORDER BY position;

Такой запрос позволяет фильтровать и анализировать колонки программно. Например, найти все строковые поля:

SELECT name, type, comment
FROM system.columns
WHERE database = 'database_name'
  AND table = 'table_name'
  AND type = 'String';

Набор доступных полей может немного отличаться в зависимости от версии ClickHouse и настроек сервера. Если отдельного столбца нет, его можно убрать из запроса.

Информация о таблице и её размере

Сведения о самой таблице, а не только о колонках, находятся в system.tables:

SELECT
    name,
    engine,
    total_rows,
    total_bytes,
    comment,
    create_table_query
FROM system.tables
WHERE database = 'database_name'
  AND name = 'table_name';

Здесь можно увидеть движок, комментарий таблицы, примерное число строк, объём данных и SQL-запрос создания. Значения total_rows и total_bytes могут обновляться не мгновенно и зависят от версии ClickHouse.

Что выбрать

  • Для быстрого просмотра колонок — DESCRIBE TABLE.
  • Для полного определения и ключей таблицы — SHOW CREATE TABLE.
  • Для скриптов, фильтрации и анализа метаданных — system.columns.
  • Для сведений о движке, размере и комментарии таблицы — system.tables.

Для большинства повседневных задач достаточно выполнить DESCRIBE TABLE, а затем при необходимости проверить полное определение через SHOW CREATE TABLE.

Ответ подготовлен нейросетью Coperix и проверен редактором. Перед важными решениями сверяйтесь с официальными источниками и специалистами.

Частые вопросы

Как посмотреть только названия и типы колонок в ClickHouse?

Выполните `DESCRIBE TABLE database_name.table_name` или запросите поля `name` и `type` из `system.columns`.

Какая команда показывает ORDER BY и движок таблицы?

Используйте `SHOW CREATE TABLE database_name.table_name`. Она выводит полное определение таблицы.

Где посмотреть комментарий к колонке?

Комментарий доступен в результате `DESCRIBE TABLE` и в поле `comment` системной таблицы `system.columns`.

Не нашли ответ на свой вопрос?

Спросите Coperix — бесплатно и без регистрации. Можно приложить фото, документ или таблицу.

Напишите сообщение

Примеры — нажмите, чтобы подставить в поле:

Задать свой вопрос