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

SQL Консоль

SQL консоль — это самый быстрый и простой способ исследовать и запрашивать ваши базы данных в ClickHouse Cloud. Вы можете использовать SQL консоль для:

  • Подключения к вашим ClickHouse Cloud Services
  • Просмотра, фильтрации и сортировки данных таблиц
  • Выполнения запросов и визуализации данных результатов всего за несколько кликов
  • Совместного использования запросов с членами команды и более эффективного сотрудничества.

Исследование Таблиц

Просмотр Списка Таблиц и Информации о Схеме

Обзор таблиц, содержащихся в вашем экземпляре ClickHouse, можно найти в левом боковом меню. Используйте селектор базы данных в верхней части левой панели, чтобы просмотреть таблицы в конкретной базе данных.

Просмотр списка таблиц и схемы, показывающий базы данных в левой боковой панели

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

Просмотр развернутой таблицы, показывающей имена колонок и типы данных

Исследование Данных Таблицы

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

Представление таблицы с данными, которые можно выделить и скопировать

Просмотр Данных Ячейки

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

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

Фильтрация и Сортировка Таблиц

Сортировка Таблицы

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

Диалог сортировки, показывающий конфигурацию для сортировки по убыванию на колонке

SQL консоль также позволяет добавлять несколько сортировок к таблице. Нажмите кнопку 'Sort' снова, чтобы добавить еще одну сортировку. Примечание: сортировки применяются в порядке их появления в панели сортировки (сверху вниз). Чтобы удалить сортировку, просто щелкните кнопку 'x' рядом с сортировкой.

Фильтрация Таблицы

Чтобы отфильтровать таблицу в SQL консоли, откройте таблицу и выберите кнопку 'Filter'. Как и в случае с сортировкой, эта кнопка откроет меню, которое позволит вам настроить ваш фильтр. Вы можете выбрать колонку, по которой будет производиться фильтрация, и задать необходимые критерии. SQL консоль интеллектуально отображает параметры фильтрации, соответствующие типу данных в колонке.

Диалог фильтрации, показывающий конфигурацию для фильтрации радиоколоночки, равной GSM

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

Диалог, показывающий, как добавить дополнительный фильтр по диапазону больше 2000

Аналогично функции сортировки, щелкните кнопку 'x' рядом с фильтром, чтобы удалить его.

Фильтрация и Сортировка Вместе

SQL консоль позволяет фильтровать и сортировать таблицу одновременно. Для этого добавьте все желаемые фильтры и сортировки, используя описанные выше шаги, и нажмите кнопку 'Apply'.

Интерфейс, показывающий о�дновременное применение фильтрации и сортировки

Создание Запроса из Фильтров и Сортировок

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

Интерфейс, показывающий кнопку Создать Запрос, которая генерирует SQL из фильтров и сортировок
примечание

Фильтры и сортировки не являются обязательными при использовании функции 'Create Query'.

Вы можете узнать больше о запросах в SQL консоли, прочитав (link) документацию по запросам.

Создание и Выполнение Запроса

Создание Запроса

Существует два способа создать новый запрос в SQL консоли.

  • Нажмите кнопку '+' на панели вкладок.
  • Выберите кнопку 'New Query' из списка запросов в левой боковой панели.
Интерфейс, показывающий, как создать новый запрос с помощью кнопки + или кнопки Новый Запрос

Выполнение Запроса

Чтобы выполнить запрос, введите ваши SQL команды в SQL редактор и нажмите кнопку 'Run' или используйте сочетание клавиш cmd / ctrl + enter. Чтобы написать и выполнить несколько команд последовательно, убедитесь, что вы добавили точку с запятой после каждой команды.

Опции Выполнения Запросов По умолчанию, нажатие кнопки запуска выполнит все команды, содержащиеся в SQL редакторе. SQL консоль поддерживает две другие опции выполнения запросов:

  • Выполнить выделенные команды
  • Выполнить команду по курсору

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

Интерфейс, показывающий, как выполнить выделенную часть SQL запроса

Запуск команды в текущей позиции курсора можно осуществить двумя способами:

  • Выберите 'At Cursor' из расширенного меню опций выполнения (или используйте соответствующее сочетание клавиш cmd / ctrl + shift + enter).
Опция Выполнить по Курсору в расширенном меню опций выполнения
  • Выбор 'Run at cursor' из контекстного меню SQL редактора.
Опция Выполнить по Курсору в контекстном меню SQL редактора
примечание

Команда, находящаяся в позиции курсора, будет мигать желтым при выполнении.

Отмена Запроса

Во время выполнения запроса кнопка 'Run' на панели инструментов редактора запросов будет заменена кнопкой 'Cancel'. Просто нажмите эту кнопку или нажмите Esc, чтобы отменить запрос. Примечание: любые результаты, которые уже были возвращены, сохранятся после отмены.

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

Сохранение Запроса

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

Интерфейс, показывающий, как переименовать запрос из Untitled Query

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

Кнопка сохранения на панели инструментов редактора запросов

Использование GenAI для управления запросами

Эта функция позволяет пользователям писать запросы в виде вопросов на естественном языке и заставлять консоль запросов создавать SQL запросы на основе контекста доступных таблиц. GenAI также может помочь пользователям отлаживать свои запросы.

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

Настройка Таблицы

Давайте импортируем пример набора данных UK Price Paid и используем его для создания некоторых запросов GenAI.

  1. Откройте службу ClickHouse Cloud.

  2. Создайте новый запрос, нажав значок +.

  3. Вставьте и выполните следующий код:

    Этот запрос должен занять около 1 секунды для завершения. Как только он выполнится, у вас должна быть пустая таблица с именем uk_price_paid.

  4. Создайте новый запрос и вставьте следующий запрос:

Этот запрос извлекает набор данных с сайта gov.uk. Этот файл весит ~4 GB, поэтому на выполнение этого запроса потребуется несколько минут. Как только ClickHouse обработает запрос, у вас будет весь набор данных в таблице uk_price_paid.

Создание Запроса

Давайте создадим запрос, используя естественный язык.

  1. Выберите таблицу uk_price_paid, а затем нажмите Create Query.

  2. Нажмите Generate SQL. Вам может быть предложено согласиться на отправку ваших запросов в Chat-GPT. Вы должны выбрать I agree, чтобы продолжить.

  3. Теперь вы можете использовать этот запрос, чтобы ввести запрос на естественном языке и заставить ChatGPT преобразовать его в SQL запрос. В этом примере мы введем:

    Показать мне общую цену и общее количество всех транзакций uk_price_paid по годам.

  4. Консоль сгенерирует запрос, который нам нужен, и отобразит его в новой вкладке. В нашем примере, GenAI создал следующий запрос:

  5. Когда вы убедитесь, что запрос правильный, нажмите Run, чтобы выполнить его.

Отладка

Теперь давайте протестируем возможности отладки запросов GenAI.

  1. Создайте новый запрос, щелкнув по значку + и вставьте следующий код:

  2. Нажмите Run. Запрос завершается с ошибкой, так как мы пытаемся получить значения из pricee, а не из price.

  3. Нажмите Fix Query.

  4. GenAI попытается исправить запрос. В этом случае он изменил pricee на price. Он также понял, что toYear — лучше функция для использования в этом сценарии.

  5. Выберите Apply, чтобы добавить предложенные изменения в ваш запрос и нажмите Run.

Имейте в виду, что GenAI — это экспериментальная функция. Будьте осторожны при выполнении запросов, сгенерированных GenAI, против любого набора данных.

Расширенные Функции Запросов

Поиск Результатов Запроса

После выполнения запроса вы можете быстро искать среди возвращенного набора результатов, используя поле поиска в области результатов. Эта функция помогает предварительно просмотреть результаты дополнительного WHERE условия или просто проверить, чтобы убедиться, что конкретные данные включены в набор результатов. После ввода значения в поле поиска область результатов обновится и вернет записи, содержащие запись, соответствующую введенному значению. В этом примере мы будем искать все вхождения breakfast в таблице hackernews для комментариев, которые содержат ClickHouse (регистр не имеет значения):

Поиск Данных Hacker News

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

Совпадение в тексте

Настройка Параметров Пагинации

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

Опции пагинации

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

Навигация по пагинации

Экспорт Данных Результата Запроса

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

Скачать как CSV

Визуализация Данных Запроса

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

Табличные результаты запроса

Без визуализации эти результаты трудно интерпретировать. Давайте превратим их в график.

Создание Графиков

Чтобы начать создание вашей визуализации, выберите опцию 'Chart' из панели инструментов области результатов запроса. Появится панель конфигурации графика:

Переключение с запроса на график

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

Общее количество поездок по неделям

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

Столбчатый график

Настройка Графиков

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

Изменить с столбчатого графика на область

Названия графиков соответствуют имени запроса, предоставляющему данные. Обновление имени запроса приведет к обновлению заголовка графика:

Обновить имя запроса

Также можно настроить ряд более продвинутых характеристик графика в разделе 'Advanced' панели конфигурации графика. Начнем с настройки следующих параметров:

  • Подзаголовок
  • Заголовки осей
  • Ориентация меток для оси x

Наш график будет обновлен соответственно:

Обновить подзаголовок и др.

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

Настроить масштаб осей

Совместное Использование Запросов

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

Чтобы поделиться запросом, нажмите кнопку 'Share' на панели инструментов запроса.

Кнопка поделиться на панели инструментов запроса

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

Диалог для редактирования доступа к совместному запросу
Интерфейс для добавления команды к совместному запросу
Интерфейс для редактирования доступа участника к совместному запросу

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

Раздел 'Совместные со мной' в списке запросов