SQL Console
SQL Console — это самый быстрый и простой способ изучать базы данных и выполнять к ним запросы в ClickHouse Cloud. Вы можете использовать SQL Console, чтобы:
- Подключаться к своим сервисам ClickHouse Cloud
- Просматривать, фильтровать и сортировать данные таблиц
- Выполнять запросы и визуализировать результаты всего за несколько кликов
- Делиться запросами с членами команды и эффективнее совместно работать
Работа с таблицами
Просмотр списка таблиц и информации о схеме
Обзор таблиц, содержащихся в вашем экземпляре ClickHouse, доступен в левой боковой панели. Используйте селектор базы данных в верхней части левой панели, чтобы просмотреть таблицы в конкретной базе данных.

Таблицы в списке также можно развернуть, чтобы просмотреть столбцы и их типы.

Изучение данных таблицы
Нажмите на таблицу в списке, чтобы открыть её в новой вкладке. В представлении Table View данные можно легко просматривать, выделять и копировать. Обратите внимание, что структура и форматирование сохраняются при копировании и вставке в табличные приложения, такие как Microsoft Excel и Google Sheets. Вы можете переключаться между страницами данных таблицы (с разбивкой на страницы по 30 строк) с помощью панели навигации в нижней части окна.

Просмотр данных ячейки
Инструмент Cell Inspector можно использовать для просмотра больших объёмов данных, содержащихся в одной ячейке. Чтобы открыть его, щёлкните правой кнопкой мыши по ячейке и выберите «Inspect Cell». Содержимое инспектора можно скопировать, нажав значок копирования в правом верхнем углу окна инспектора.

Фильтрация и сортировка таблиц
Сортировка таблицы
Чтобы отсортировать таблицу в SQL‑консоли, откройте таблицу и нажмите кнопку Sort на панели инструментов. Откроется меню, в котором можно настроить параметры сортировки. Вы можете выбрать столбец для сортировки и задать порядок сортировки (по возрастанию или по убыванию). Нажмите Apply или клавишу Enter, чтобы отсортировать таблицу.

SQL‑консоль также позволяет добавить к таблице несколько уровней сортировки. Нажмите кнопку Sort еще раз, чтобы добавить еще один уровень. Примечание: сортировки применяются в том порядке, в котором они перечислены в области сортировки (сверху вниз). Чтобы удалить сортировку, нажмите кнопку x рядом с нужной сортировкой.
Фильтрация таблицы
Чтобы отфильтровать таблицу в SQL-консоли, откройте таблицу и нажмите кнопку «Filter». Как и при сортировке, эта кнопка откроет меню, в котором можно настроить фильтр. Вы можете выбрать столбец, по которому будет выполняться фильтрация, и указать необходимые критерии. SQL-консоль автоматически предлагает варианты фильтрации, соответствующие типу данных в столбце.

Когда вы будете довольны настройкой фильтра, нажмите «Apply», чтобы отфильтровать данные. Вы также можете добавить дополнительные фильтры, как показано ниже.

Как и в случае сортировки, нажмите кнопку «x» рядом с фильтром, чтобы удалить его.
Одновременная фильтрация и сортировка
SQL-консоль позволяет одновременно фильтровать и сортировать таблицу. Для этого добавьте все необходимые фильтры и сортировки, используя шаги, описанные выше, и нажмите кнопку «Apply».

Создание запроса из фильтров и сортировок
Консоль SQL может преобразовывать ваши сортировки и фильтры непосредственно в запросы в один клик. Просто выберите на панели инструментов кнопку «Create Query» с нужными вам параметрами сортировки и фильтрации. После нажатия «Create query» откроется новая вкладка запроса, предварительно заполненная SQL-командой, соответствующей данным в вашем табличном представлении.

Фильтры и сортировки не являются обязательными при использовании функции «Create Query».
Вы можете узнать больше о работе с запросами в консоли SQL, обратившись к документации по запросам (link).
Создание и выполнение запроса
Создание запроса
Существует два способа создать новый запрос в консоли SQL.
- Нажмите кнопку «+» на панели вкладок
- Нажмите кнопку «New Query» в списке запросов на левой боковой панели

Выполнение запроса
Чтобы выполнить запрос, введите SQL-команду (команды) в SQL Editor и нажмите кнопку "Run" или используйте сочетание клавиш cmd / ctrl + enter. Чтобы записать и выполнить несколько команд последовательно, обязательно добавляйте точку с запятой после каждой команды.
Параметры выполнения запроса
По умолчанию при нажатии кнопки "Run" будут выполнены все команды, находящиеся в SQL Editor. SQL console поддерживает два других варианта выполнения запроса:
- Выполнить выделенную команду (команды)
- Выполнить команду в позиции курсора
Чтобы выполнить выделенную команду (команды), выделите нужную команду или последовательность команд и нажмите кнопку "Run" (или используйте сочетание клавиш cmd / ctrl + enter). Вы также можете выбрать "Run selected" в контекстном меню SQL Editor (открывается щелчком правой кнопки мыши в любой точке редактора), когда есть выделение.

Выполнение команды в текущей позиции курсора можно сделать двумя способами:
- Выберите "At Cursor" в расширенном меню параметров запуска (или используйте соответствующее сочетание клавиш
cmd / ctrl + shift + enter)

- Выберите "Run at cursor" в контекстном меню SQL Editor

Команда, находящаяся в позиции курсора, при выполнении кратковременно подсветится жёлтым цветом.
Отмена запроса
Во время выполнения запроса кнопка Run на панели инструментов Query Editor заменяется кнопкой Cancel. Нажмите эту кнопку или клавишу Esc, чтобы отменить запрос. Примечание: все результаты, которые уже были получены, сохранятся после отмены.

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

Вы также можете использовать кнопку сохранения или сочетание клавиш cmd / ctrl + s, чтобы сохранить запрос.

Использование GenAI для управления запросами
Эта функция позволяет формулировать запросы в виде вопросов на естественном языке, а консоль запросов будет создавать SQL-запросы на основе контекста доступных таблиц. GenAI также может помочь с отладкой запросов.
Дополнительную информацию о GenAI см. в блог-посте Announcing GenAI powered query suggestions in ClickHouse Cloud blog post.
Настройка таблицы
Импортируем пример набора данных UK Price Paid и используем его для создания нескольких запросов GenAI.
-
Откройте сервис ClickHouse Cloud.
-
Создайте новый запрос, нажав на значок +.
-
Вставьте и выполните следующий код:
Выполнение этого запроса должно занять около 1 секунды. После завершения у вас должна появиться пустая таблица с именем
uk_price_paid. -
Создайте новый запрос и вставьте в него следующий код:
Этот запрос загружает набор данных с веб-сайта gov.uk. Размер файла составляет примерно 4 ГБ, поэтому выполнение запроса займет несколько минут. После того как ClickHouse обработает запрос, весь набор данных будет находиться в таблице uk_price_paid.
Создание запроса
Давайте создадим запрос на естественном языке.
-
Выберите таблицу uk_price_paid, затем нажмите Create Query.
-
Нажмите Generate SQL. Вас могут попросить подтвердить, что ваши запросы отправляются в Chat-GPT. Чтобы продолжить, необходимо выбрать I agree.
-
Теперь вы можете использовать это поле ввода, чтобы ввести запрос на естественном языке и позволить ChatGPT преобразовать его в SQL-запрос. В этом примере мы введём:
Покажи общую сумму и общее количество всех транзакций uk_price_paid по годам.
-
Консоль сгенерирует нужный нам запрос и отобразит его в новой вкладке. В нашем примере GenAI создал следующий запрос:
-
После того как вы убедились, что запрос корректен, нажмите Run, чтобы выполнить его.
Отладка
Теперь протестируем возможности отладки запросов в GenAI.
-
Создайте новый запрос, нажав на значок +, и вставьте следующий код:
-
Нажмите Run. Запрос завершится с ошибкой, поскольку мы пытаемся получить значения из
priceeвместоprice. -
Нажмите Fix Query.
-
GenAI попытается исправить запрос. В данном случае он изменил
priceeнаprice. Он также определил, чтоtoYear— более подходящая функция для использования в этом сценарии. -
Нажмите Apply, чтобы применить предлагаемые изменения к запросу, затем нажмите Run.
Помните, что GenAI — экспериментальная функция. Будьте осторожны при выполнении запросов, сгенерированных GenAI, по любым наборам данных.
Расширенные возможности работы с запросами
Поиск по результатам запроса
После выполнения запроса вы можете быстро искать по возвращённому набору результатов, используя поле поиска в панели результатов. Эта возможность помогает предварительно оценить результаты дополнительного условия WHERE или просто проверить, что определённые данные включены в набор результатов. После ввода значения в поле поиска панель результатов обновится и покажет записи, содержащие вхождение, соответствующее введённому значению. В этом примере мы найдём все упоминания breakfast в таблице hackernews среди комментариев, содержащих ClickHouse (без учёта регистра):

Примечание: Будут возвращены все записи, в которых хотя бы одно поле соответствует введённому значению. Например, третья запись на скриншоте выше не содержит breakfast в поле by, но значение в поле text содержит это слово:

Настройка параметров разбиения на страницы
По умолчанию панель результатов запроса отображает все записи на одной странице. Для больших наборов результатов может быть удобнее включить разбиение на страницы. Это можно сделать с помощью переключателя разбиения на страницы в правом нижнем углу панели результатов:

После выбора размера страницы разбиение на страницы сразу же применяется к набору результатов, и в центре нижней части панели результатов появляются элементы навигации.

Экспорт результатов запроса
Результаты запросов можно легко экспортировать в формат CSV непосредственно из SQL-консоли. Для этого откройте меню ••• справа на панели инструментов области результатов и выберите 'Download as CSV'.

Визуализация данных запросов
Часть данных проще интерпретировать в виде диаграмм. Вы можете быстро создавать визуализации на основе данных результатов запроса непосредственно в SQL-консоли всего за несколько кликов. В качестве примера мы используем запрос, который вычисляет еженедельную статистику по поездкам на такси в Нью-Йорке:

Без визуализации эти результаты сложно интерпретировать. Давайте превратим их в диаграмму.
Создание диаграмм
Чтобы приступить к построению визуализации, выберите вариант «Диаграмма» на панели инструментов области результатов запроса. Откроется панель настройки диаграммы:

Начнём с создания простой столбчатой диаграммы, отображающей trip_total по week. Для этого перетащите поле week на ось X, а поле trip_total — на ось Y:

Большинство типов диаграмм поддерживают несколько полей на числовых осях. Чтобы продемонстрировать это, перетащите поле fare_total на ось Y:

Настройка диаграмм
Консоль SQL поддерживает десять типов диаграмм, которые можно выбрать в селекторе типа диаграммы на панели конфигурации. Например, мы можем легко изменить предыдущий тип диаграммы с Bar на Area:

Заголовки диаграмм соответствуют имени запроса, который поставляет данные. Изменение имени запроса приведёт к обновлению заголовка диаграммы:

Ряд более продвинутых параметров диаграммы также можно настроить в разделе "Advanced" панели конфигурации. Для начала мы изменим следующие параметры:
- Подзаголовок
- Заголовки осей
- Ориентация меток для оси X
Наша диаграмма будет обновлена соответствующим образом:

В некоторых случаях может потребоваться настроить масштабы осей для каждого поля независимо. Это также можно сделать в разделе "Advanced" панели конфигурации, указав минимальные и максимальные значения для диапазона оси. В качестве примера, приведённая выше диаграмма выглядит хорошо, но для демонстрации корреляции между полями trip_total и fare_total диапазоны осей нуждаются в некоторой корректировке:

Совместное использование запросов
SQL-консоль позволяет делиться запросами с вашей командой. Когда запрос становится общим, все участники команды могут просматривать и изменять этот запрос. Общие запросы — отличный способ совместной работы с командой.
Чтобы поделиться запросом, нажмите кнопку Share на панели инструментов запроса.

Откроется диалоговое окно, позволяющее поделиться запросом со всеми участниками команды. Если у вас несколько команд, вы можете выбрать, с какой командой поделиться запросом.



В некоторых случаях может потребоваться независимо настроить шкалу осей для каждого поля. Это также можно сделать в разделе Advanced панели конфигурации графика, указав минимальные и максимальные значения диапазона оси. Например, приведённый выше график выглядит хорошо, но для демонстрации корреляции между полями trip_total и fare_total диапазоны осей нужно немного скорректировать:
