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

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

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

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

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

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

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

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

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

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

Выполнение запроса
Чтобы выполнить запрос, введите SQL-команду (или несколько команд) в SQL Editor и нажмите кнопку «Run» или используйте сочетание клавиш cmd / ctrl + enter. Чтобы писать и выполнять несколько команд последовательно, обязательно добавляйте точку с запятой после каждой команды.
Параметры выполнения запроса
По умолчанию нажатие кнопки «Run» выполнит все команды, содержащиеся в SQL Editor. SQL-консоль поддерживает ещё два варианта выполнения запроса:
- Выполнить выделенную команду (или команды)
- Выполнить команду в позиции курсора
Чтобы выполнить выделенную команду (или команды), выделите нужную команду или последовательность команд и нажмите кнопку «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.
Настройка таблицы
Импортируем пример набора данных UK Price Paid и используем его для создания некоторых запросов GenAI.
-
Откройте сервис ClickHouse Cloud.
-
Создайте новый запрос, нажав на значок +.
-
Вставьте и выполните следующий код:
Этот запрос должен выполняться около 1 секунды. После завершения у вас должна появиться пустая таблица с именем
uk_price_paid. -
Создайте новый запрос и вставьте в него следующий запрос:
Этот запрос загружает набор данных с веб-сайта gov.uk. Размер файла — около 4 ГБ, поэтому выполнение запроса займет несколько минут. После того как ClickHouse обработает запрос, весь набор данных окажется в таблице uk_price_paid.
Создание запроса
Давайте создадим запрос на естественном языке.
-
Выберите таблицу uk_price_paid, затем нажмите Create Query.
-
Нажмите Generate SQL. Возможно, вам будет предложено согласиться с тем, что ваши запросы будут отправляться в ChatGPT. Чтобы продолжить, необходимо выбрать 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-консоли всего за несколько кликов. В качестве примера мы используем запрос, который вычисляет еженедельную статистику по поездкам такси в Нью-Йорке:

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

Начнем с создания простой столбчатой диаграммы, показывающей trip_total по week. Для этого перетащите поле week на ось x, а поле trip_total — на ось y:

Большинство типов диаграмм поддерживают использование нескольких полей на числовых осях. В качестве примера перетащим поле fare_total на ось y:

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

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

Ряд более продвинутых характеристик диаграммы также можно настроить в разделе 'Advanced' панели конфигурации диаграммы. Для начала мы изменим следующие настройки:
- Subtitle
- Axis titles
- Ориентация подписей для оси x
Диаграмма будет обновлена соответствующим образом:

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

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

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



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