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

Пользовательские выражения похожи на формулы в программах для работы с электронными таблицами, таких как Excel, Google Sheets и LibreOffice Calc. Это мощные инструменты в редакторе конструктора запросов, которые позволяют создавать более сложные запросы.
Если вам не нужно введение, вы можете сразу перейти к полному списку выражений.
Пользовательские выражения для создания фильтров, метрик и произвольных столбцов¶
Чтобы использовать редактор произвольных выражений, создайте Пользовательский столбец (где пользовательское выражение используется как формула поля для вычисления значений нового столбца) или нажмите Фильтр (или Суммировать) и выберите Пользовательское выражение.
При использовании конструктора запросов вы можете создавать выражения для:
- Пользовательских столбцов. Вы можете применять
[Subtotal] / [Quantity], чтобы создать новый столбец, который вы могли бы назвать «Цена товара». - Фильтров. Выражение
contains([comment], "Glarus BI")отфильтровало бы строки, в которых полеcommentсодержит слова "Glarus BI". - Агрегаций.
Share([Total] > 50)вернёт процент заказов с общей суммой более 50 долларов.
Введите выражение, назовите его и нажмите Готово. Если кнопка "Готово" неактивна, проверьте, что выражение корректно, и что вы его назвали (в нижней части редактора выражений).
Эта страница описывает основы выражений. Вы можете просмотреть полный список выражений в Glarus BI или посмотреть руководство, в котором показано, как использовать пользовательские выражения в конструкторе запросов (документация Glarus BI, англ.).
Типы выражений¶
Существует два основных типа выражений: агрегации и функции. Ознакомьтесь с полным списком выражений.
Агрегации¶
Агрегации берут значения из нескольких строк для выполнения вычислений, например, для нахождения среднего значения по всем значениям в столбце. Функции агрегации можно использовать только в разделе Суммировать конструктора запросов, так как агрегации используют значения из всех строк для этого столбца. Таким образом, хотя вы могли создать настраиваемый столбец с формулой [Subtotal] + [Tax], вы могли не писать Sum([Subtotal] + [Tax]), если только вы не создавали собственное выражение метрики (которое добавило бы сумму всех промежуточных итогов и налогов).
Функции¶
Функции напротив, что-то делают с каждым значением в столбце, например, ищут слово в каждом значении (contains), округляют каждое значение до ближайшего целого числа (функция ceil) и так далее.
Браузер функций¶

В редактор выражений встроен браузер функций, который помогает находить нужные функции. Чтобы открыть браузер, включите f справа от редактора выражений. См. также список функций и агрегаций.
Автоформатирование¶

Чтобы отформатировать выражение, нажмите кнопку автоформатирования справа от редактора выражений (молния в фигурных скобках).
Базовые математические вычисления¶
Используйте +, -, * (умножить), / (разделить) в числовых столбцах, содержащих числовые значения — целые числа, числа с плавающей запятой (float и double). Вы можете использовать круглые скобки ( и ), чтобы группировать части вашего выражения.
Например, вы можете создать новый столбец, который вычисляет разницу между итогом и промежуточным итогом заказа: [Total] - [Subtotal].
Чтобы выполнять математические операции со столбцами временны́х меток, используйте функции даты, например dateDiff.
Условные и логические операторы¶
Операторы сравнения:
>>=(больше или равно)<<=(меньше или равно)=!=(не равно)
Булевы операторы для логической конъюнкции, дизъюнкции и отрицания:
ANDORNOT
Например, вы можете создать фильтр для клиентов из Калифорнии или Вермонта: [State] = "CA" OR [State] = "VT".
Также можно использовать условия с функцией case (алиас if):
См. case.
Ссылки на другие столбцы¶
Вы можете ссылаться на столбцы в текущей таблице или на столбцы, которые связаны отношением внешнего ключа. Названия столбцов должны быть заключены в квадратные скобки, например: [Name of Column]. На столбцы в связанных таблицах можно ссылаться следующим образом: [ConnectedTableName.Column].
Ссылки на сегменты и метрики¶
Вы можете делать ссылки на сохранённые сегменты и метрики, которые присутствуют в текущей выбранной таблице. Вы пишете их так же, как и столбцы, например: [Valid User Sessions].
Выражения фильтра и условия¶
Некоторые особенности, которые следует учитывать:
- Выражения фильтра отличаются тем, что они должны возвращать логическое значение (истинно или ложно). Например, вы можете написать
[Subtotal] + [Tax] < 100. Glarus BI просматривает каждую строку, складывает промежуточный итог и налог, а затем проверяет, превышает ли эта сумма 100. Если да, то утверждение считается истинным, и Glarus BI включает строку в результат. Если бы вместо этого вы (по ошибке) написали[Subtotal] + [Tax], Glarus BI не знала бы, что делать, поскольку это выражение не оценивается как истинное или ложное. - Аргументы логических операторов вроде
ANDиORдолжны быть булевыми. Например:[Subtotal] < 100 AND [Tax] > 12. - Вы можете использовать функции внутри условной части агрегатов
CountIfиSumIf, например:CountIf(round([Subtotal]) > 100 OR floor([Tax]) < 10).
Работа с датами в выражениях фильтра¶
Если вы хотите работать с датами в выражениях фильтра, даты должны соответствовать формату "YYYY-MM-DD", то есть четыре символа для года, два — для месяца и два — для дня, заключённые в кавычки " и разделённые дефисом -.
Пример:
between([Created At], "2025-01-01", "2025-03-31") OR [Received At] > "2024-12-25"
Это выражение будет возвращать строки, где Created At между 1 января 2025 г. и 31 марта 2025 г. или где Received At после 25 декабря 2024 г.
Список выражений¶
-
Общий список выражений.