Перейти к содержанию

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

Примечание

В Metabase используется два различных термина и сущности в системе: Question («Вопрос») и Query («Запрос»). Причём «запросы» обычно означают то же, что «прямые запросы» («native query»). Это создаёт некоторую путаницу и вызывает непонимание у русскоязычных разработчиков и пользователей, которые сталкиваются с системой впервые.

В Glarus BI мы посчитали, что термин "вопрос" избыточен, и решили ограничиться "запросом" для обоих случаев. Просто имейте в виду, что "запрос" в системе имеет более широкое значение, чем просто SQL-код, который возвращает какой-то набор данных. Запрос также включает визуализацию.

Чтобы создать запрос в Glarus BI, нажмите кнопку + Новый в правом верхнем углу главной панели навигации и выберите один из следующих вариантов:

На этой странице рассказывается, как создать запрос с помощью графического конструктора запросов Glarus BI, опции «Запрос».

Создание нового запроса с помощью конструктора запросов

В раскрывающемся списке + Новый выберите Запрос, затем выберите исходные данные:

Вы можете начать запрос из:

  • Модели. Модель — это особый вид сохранённого запроса, предназначенный для использования в качестве хорошей отправной точки. Иногда их называют производными таблицами, так как они обычно объединяют данные из нескольких необработанных таблиц.
  • Необработанные данные. Вам нужно будет указать базу данных и таблицу в этой базе данных в качестве отправной точки для вашего запроса.
  • Сохранённый запрос. Вы можете использовать результаты любого запроса в качестве отправной точки для нового запроса.

Обратите внимание, что некоторые виды сохранённых запросов нельзя использовать в качестве исходных данных:

  • запросы к Druid;
  • запросы к Google-аналитике;
  • запросы к MongoDB;
  • запросы, в которых используются агрегаты Cumulative Sum или Cumulative Count;
  • запросы, в которых есть столбцы с одинаковыми или похожими названиями, например Count и Count 2.

Конструктор запросов

Как только вы выберете свои данные, Glarus BI предоставит вам конструктор запросов. Допустим, вы выбрали Необработанные данные > Образец базы данных > Заказы, тогда вы увидите что-то вроде этого:

Glarus BI. Конструктор запросов

Это редактор конструктора запросов. Он имеет три шага по умолчанию.

Справа от завершённого шага находится кнопка Предварительный просмотр (выглядит как кнопка «Воспроизвести» — треугольник, указывающий вправо), которая показывает первые 10 строк результатов вашего запроса до этого шага.

Предпросмотр результатов

Выбор данных

В разделе данных вы выбираете данные, с которыми хотите работать. Здесь вы можете выбрать модель, таблицу из базы данных или сохранённый запрос. Вы можете нажать на таблицу, чтобы выбрать, какие столбцы вы хотите включить в свои результаты.

Соединение данных

Вы также можете выбрать несколько таблиц из одной и той же базы данных, соединив их.

Фильтрация

Фильтрация просто означает сужение списка на основе определённых критериев. Вы, вероятно, уже знакомы с фильтрацией при поиске чего-либо в Интернете, например при совершении покупок. Может быть вы хотите видеть только брюки синего цвета или книги, фамилия автора которых «Борхес», или изображения людей в брюках синего цвета, читающих Хорхе Луиса Борхеса.

Фильтрация

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

Вы можете добавить последующие шаги фильтра после каждого шага. Это позволяет вам суммировать по количеству строк в месяц, а затем добавлять фильтр в столбец count, чтобы включать только строки, в которых количество больше 100 (Это в основном похоже на предложение SQL HAVING )

Если вы довольны своим фильтром, нажмите Добавить фильтр и визуализируйте свои результаты. Ваши данные будут обновлены с применением фильтра.

Если вы хотите отредактировать свой фильтр, просто щёлкните маленький фиолетовый фильтр в верхней части экрана. Если вы нажмёте на X, вы удалите свой фильтр. Вы можете добавить столько фильтров, сколько вам нужно.

Типы фильтров

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

  • Числовые столбцы позволяют добавлять фильтры для включения в таблицу только тех строк, в которых это число находится между двумя конкретными значениями, больше или меньше определённого значения или точно равно чему-либо.
  • Текстовые столбцы или столбцы категорий позволяют указать, что вы хотите включать данные только там, где этот столбец является или не является определённым параметром, или вы можете исключить пустые ячейки в этом столбце.
  • Столбцы Дата предоставляют множество вариантов фильтрации по определённым диапазонам дат, относительным диапазонам дат и т.д.

Модальный фильтр

При просмотре таблицы или диаграммы нажатие на Фильтр вызовет модальное окно фильтра:

Массовый модальный фильтр

Здесь вы можете добавить несколько фильтров к своему запросу за один раз. Параметры фильтра будут различаться в зависимости от типа поля. Любые таблицы, связанные внешними ключами, будут отображаться на левой вкладке модального окна. Когда вы закончите добавлять фильтры, нажмите Применить фильтры, чтобы повторно выполнить запрос и обновить его результаты. Чтобы удалить все применённые фильтры, нажмите Удалить все фильтры в левом нижнем углу окна фильтра. Любые фильтры, которые вы примените здесь, будут отображаться в редакторе записной книжки, и наоборот.

Фильтр по дате

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

  • Конкретные даты — это, например, 1 ноября 2010 г. или 3 июня — 12 июля 2025 г.; они всегда относятся к одной и той же дате (датам).
  • Относительные даты — это такие вещи, как «последние 30 дней» или «текущая неделя»; по прошествии времени даты, на которые эти параметры ссылаются, изменяются. Относительные даты — это полезный способ настроить фильтр для запроса, чтобы он оставался актуальным, показывая вам, например, сколько людей посетило ваш сайт за последние 7 дней. Вы также можете нажать , чтобы указать параметр Начиная с, который позволяет сместить относительный диапазон дат. Для примера вы можете установить диапазон как «Предыдущие 7 дней, начиная с 2 дней назад».

Фильтр по сегментам

Если администраторы вашей Glarus BI создали специальные именованные фильтры для просматриваемой вами таблицы, они будут отображаться в верхней части раскрывающегося списка фильтров фиолетовым текстом со звёздочкой рядом с ними. Они называются Сегменты и представляют собой ярлыки для комбинации фильтров, которые обычно используются в вашей организации. Их также можно назвать, например, «Активные пользователи» или «Самые популярные продукты».

Фильтры OR

Выражение фильтра

Если у вас есть более сложный фильтр, который вы пытаетесь применить, вы можете выбрать Пользовательское выражение в меню добавления фильтра, чтобы создать выражение фильтра. Вы можете использовать операторы сравнения, такие как больше, > или меньше, <, а также функции, подобные электронным таблицам. Например, [Subtotal] > 100 OR median([Age]) < 40. Узнайте больше о написании выражений или сразу перейдите к списку выражений.

Обобщение и группировка по

Обобщение

Когда у нас появляется вопрос вида «сколько людей загружали наше приложение каждый день на прошлой неделе?», мы просим предоставить сводку данных. Сводка обычно состоит из двух частей: одного или нескольких чисел, которые нам нужны (на языке данных называемых «метрикой»), и того, как мы хотим видеть это число сгруппированным или разбитым на части. Например для следующего вопроса: «Сколько людей загружали наше приложение каждый день на прошлой неделе?»

  • Метрикой будет количество людей, скачавших приложение (количество строк).
  • Мы хотим, чтобы эта метрика была сгруппирована по "каждому дню".
  • И мы хотим отфильтровать строки для "последней недели".

Существует два распространённых способа суммирования данных:

  • подсчёт количества строк в вашей таблице;
  • получение суммы или среднего значения числового столбца.

В большинстве случаев вы затем группируете эту метрику по:

  • времени;
  • месту;
  • категории.

Добавление шага суммирования позволяет вам выбрать, как агрегировать данные из предыдущего шага. Вы можете выбрать одну или несколько метрик и при желании сгруппировать эти метрики по одному или нескольким параметрам (столбцам). При выборе метрик вы можете выбрать одну из основных функций, таких как sum, average, и count; или вы можете выбрать общую метрику, определённую администратором; или вы можете создать настраиваемое выражение, написав формулу.

Общие показатели включают в себя:

  • Количество строк: общее количество строк в таблице после применения любых фильтров. Если вы смотрите на свою таблицу Orders и хотите узнать, сколько заказов было размещено с ценой выше 40 долларов США, вы должны отфильтровать по «Цена больше 40», а затем выбрать Count of rows, потому что вы хотите, чтобы Glarus BI подсчитала, сколько заказов соответствует вашему фильтру.
  • Сумма…: сумма всех значений в определённом столбце.
  • Среднее значение…: среднее значение всех значений в одном столбце.
  • Количество уникальных значений…: количество уникальных значений во всех ячейках одного столбца. Это полезно при попытке выяснить, например, сколько различных типов продуктов было продано в прошлом месяце (а не сколько было продано всего).
  • Накопленная сумма…: Это даёт вам промежуточный итог для определённого столбца. Чтобы эта метрика была полезной, вам нужно сгруппировать её по столбцу даты, чтобы увидеть её во времени.
  • Совокупное количество строк: даёт вам общее количество строк в таблице с течением времени. Так же, как и Cumulative sum of…, вам нужно будет сгруппировать это по столбцу даты, чтобы оно было полезным.
  • Стандартное отклонение…: Число, которое показывает, насколько значения в столбце отличаются, плюс или минус, от среднего значения в этом столбце.
  • Минимум из…: Минимальное значение, присутствующее в выбранном поле.
  • Максимум из…: Максимальное значение, присутствующее в выбранном поле.

Если вы подведёте итоги и добавите группировку, вы сможете подытожить снова. Вы также можете добавить шаги для фильтрации и/или соединения между ними. Для примера ваш первый шаг суммирования может состоять в том, чтобы получить количество заказов в месяц, а затем вы можете добавить второй шаг суммирования, чтобы получить среднемесячную сумму заказов, выбрав Average of… вашего столбца count.

Несколько шагов обобщения

Вы также можете добавить метрики и группировки на странице результатов в боковой панели: в верхней части боковой панели вы выбираете число («метрику»), которое хотите увидеть, а в нижней части вы выбираете, как сгруппировать это число (или как "разбить").

Если ваши администраторы создали какие-либо именованные показатели, характерные для вашей компании или организации, они будут в этом раскрывающемся списке в разделе Общие показатели. Это могут быть такие вещи, как, например, официальный способ расчёта доходов вашей компании.

Группировка ваших показателей

В зависимости от выбранного вами столбца группировки Glarus BI покажет вам, что она считает лучшей визуализацией или диаграммой по умолчанию для этой сводки. Поэтому, если вы выберете столбец дат, вы увидите линейную диаграмму, подобную этой (вы можете нажать зеленую кнопку Суммировать, чтобы просмотреть боковую панель суммирования).

Группировка по дате столбца

Когда вы нажимаете на другой столбец группировки, отличный от того, который вы выбрали в данный момент, группировка переключится на использование этого столбца. Но если вы хотите добавить дополнительную группу, просто щёлкните значок плюса (+) в правой части столбца. Чтобы удалить группу, щёлкните значок X.

Несколько группировок

Некоторые столбцы группировки дадут вам возможность выбрать, насколько большими или маленькими будут группировки. Например, если вы выбрали столбец «Дата» для группировки, вы можете нажать на слова by month, чтобы изменить группировку на день, неделю, час, квартал, год и т.д. Если вы группируете по числовому столбцу, например, по возрасту, Glarus BI автоматически «сгруппирует» результаты, поэтому вы увидите свою метрику, сгруппированную в возрастные группы, например 0–10, 11–20, 21–30 и т.д. Как и в случае с датами, вы можете щёлкнуть на текущем параметре бинирования, чтобы изменить его на определённое количество бинов. Однако в настоящее время невозможно выбрать собственные диапазоны для ячеек.

Несколько группировок

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

Визуализация ваших данных

Если вы хотите забежать вперёд — узнайте, как изменить визуализацию ваших результатов.

Возврат к редактору блокнота

Чтобы вернуться к редактору блокнота для запроса, нажмите кнопку «Показать редактор» в правом верхнем углу.

Показать редактор

Просмотр сведений об отдельной записи

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

Детали записей

Пользовательские выражения

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

Пользовательские выражения

Например, вы можете сделать Average(sqrt[FieldX]) + Sum([FieldY]) или Max(floor([FieldX] - [FieldY])), где FieldX и FieldY являются полями в текущей выбранной таблице. Подробнее о написании выражений.

Создание пользовательских столбцов

Пользовательские столбцы

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

В формулах можно использовать следующие математические операторы: +, , * (умножение) и / (деление), а также целый ряд функций, подобных функциям Excel. Вы также можете использовать круглые скобки для уточнения порядка операций.

Сортировка результатов

Сортировка

Шаг сортировки позволяет выбрать один или несколько столбцов для сортировки результатов. Для каждого выбранного вами столбца вы также можете выбрать сортировку по возрастанию или по убыванию; просто щёлкните стрелку, чтобы перейти от восходящей (стрелка вверх) к нисходящей (стрелка вниз).

Установка лимита строк

Шаг ограничения строк позволяет вам ограничить количество строк, которые вы хотите получить из предыдущих результатов. При использовании в сочетании с сортировкой это может позволить вам делать такие вещи, как создание списка первых 10, сначала сортируя по одному из столбцов в вашем результате, а затем добавляя ограничение строки 10. В отличие от других шагов, шаг ограничения строки может добавляться только в конце вашего запроса.

Просмотр SQL, который отвечает за ваш запрос

Под капотом большинство запросов в Glarus BI — это SQL. Если вам интересно увидеть SQL, который будет запущен, когда вы выполните свой запрос, вы можете щёлкнуть маленький значок консоли в правом верхнем углу редактора. В открывшемся модальном окне вам также будет предоставлена возможность запустить новый запрос в редакторе SQL, используя этот сгенерированный SQL в качестве отправной точки (при условии, что у вас есть разрешения SQL в эту базу данных). Это хороший способ, чтобы Glarus BI написала для вас некоторый шаблонный SQL, который вы затем сможете настроить или изменить.

Поэкспериментируйте с сохранёнными запросами

Каждый раз, когда вы начинаете изменять сохранённый запрос, Glarus BI будет создавать для вас новый запрос. Конструктор запросов отобразит название исходного запроса в разделе Данные.

Начиная с сохранённого запроса

Пробуйте экспериментировать с любым сохранённым запросом, так как вы не окажете никакого влияния на существующий запрос. Когда вы нажимаете Сохранить в запросе, вы можете либо сохранить его как новый запрос (по умолчанию), либо перезаписать существующий запрос, с которого вы начали.

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

История версий запроса

Для запросов, дашбордов и моделей Glarus BI хранит историю версий для предыдущих пятнадцати версий этого элемента.

См. История.

Дополнительная информация