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

SQL-параметры

Переменные

Вы можете создавать шаблоны SQL, добавляя параметры (то есть переменные) в SQL‑запросы в редакторе прямых запросов.

Эти переменные создают виджеты фильтров, которые пользователи могут использовать, чтобы подставлять значения в запрос. Также вы можете подключать виджеты фильтров дашборда к этим параметрам.

Типы SQL‑переменных

Когда вы определяете переменную, появляется боковая панель "Переменные и настройки". Вы можете задать тип переменной — это изменит то, какой виджет фильтра Glarus BI покажет пользователю.

Типы переменных:

  • Фильтр поля: создают «умные» виджеты фильтров (например, с выбором даты или выпадающим списком). Чтобы использовать фильтр поля, нужно сопоставить его с полем базы данных, которое есть в вашем запросе.
  • Основные: текст, число, дата: могут быть полезны в случае, когда фильтры поля по каким-то причинам нельзя использовать.
  • Группировка по времени: позволяют пользователям менять группировку результатов по столбцу с датой (по месяцам, неделям, дням и т. п.).

Вы можете использовать несколько переменных в одном запросе, и Glarus BI добавит несколько виджетов к запросу. Чтобы изменить порядок виджетов, перейдите в режим редактирования, затем перетащите любой виджет в нужное место.

Настройка виджета фильтра

Когда вы добавляете переменную фильтра поля или основную переменную в SQL‑код, его нужно настроить в боковой панели.

  1. Выберите Тип переменной.
  2. Задайте подпись (Имя переменной) для виджета.
  3. Выберите Как пользователи должны фильтровать эту переменную?:
  4. Выпадающий список — выпадающий список со всеми доступными значениями.
  5. Поле поиска — строка поиска по значениям.
  6. Поле ввода — простое поле ввода.
  7. Если фильтр сопоставлен с полем в таблице с псевдонимом, нужно также указать псевдоним таблицы и поля (подробнее см. в разделе про поля фильтров).
  8. При необходимости задайте значение по умолчанию (Значение по умолчанию для виджет фильтра).

См. виджеты фильтров.

Присвоение значений переменным SQL

Чтобы присвоить переменной SQL значение, вы можете:

  • ввести значение в виджет фильтра и повторно выполнить запрос;
  • добавить параметр в URL и перезагрузить страницу.

Передача параметра через URL

Чтобы добавить значение в URL, используйте такой синтаксис:

?variable_name=value

Например, чтобы задать значение "Gizmo" для переменной {{category}}, URL будет выглядеть так:

https://glarus-bi.example.com/question/42-eg-question?category=Gizmo

Чтобы присвоить значения нескольким переменным, разделите параметры амперсандом (&):

https://glarus-bi.example.com/question/42-eg-question?category=Gizmo&maxprice=50

Подключение SQL‑запроса к фильтру дашборда

Чтобы SQL‑запрос (прямой запрос) можно было использовать с фильтром дашборда, запрос должен содержать хотя бы одну переменную (параметр).

Какой тип фильтра дашборда можно использовать с SQL‑запросом, зависит от поля. Например, если у вас есть фильтр поля {{var}} и вы сопоставили его с полем семантического типа Территориальная единица, то вы сможете сопоставить фильтр локации на дашборде с SQL‑запросом. В этом примере вы можете:

  1. Создать новый дашборд (или открыть существующий).
  2. Нажать на значок карандаша, чтобы перейти в режим редактирования дашборда.
  3. Добавить SQL‑запрос, который содержит фильтр поля Region.
  4. Добавить новый фильтр дашборда (или отредактировать существующий фильтр размещения).
  5. Открыть выпадающий список на карточке SQL‑запроса и сопоставить виджет с полем фильтра Region.

Если вы добавите основную переменную типа "Дата" (то есть не фильтр поля), тогда можно будет использовать только фильтр дашборда Одиночная дата. Если вам нужен другой вариант фильтра по времени, измените переменную на "фильтр поля" и сопоставьте её с полем даты.

Фильтр поля

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