Оформление
Область окна
Задают, что считать окном для оконной функции: всю выборку, группы по измерениям или всё, кроме перечисленных измерений.
Примеры считаются на демо-датасете «Продажи»: заказы, товары и покупатели. Разрез — категория товара, если не сказано иное.
Не все функции доезжают до источника
В режиме прямого запроса формула переводится в SQL вашей базы, и часть функций в её диалекте отсутствует. У таких ниже стоит строка «В прямом запросе…» с перечнем баз, на которых расчёт не соберётся. Oracle, Firebird и Trino в этот перечень не входят: на них в прямом запросе не строится большинство виджетов — поддержка функций источниками.
AMONG
SUM( SUM( [ value ] ) AMONG [ dim ], … )Окно — измерения виджета, кроме перечисленных.
Пример.
SUM(SUM([orders.amount]) AMONG [products.category])134 683 500 — при единственном измерении исключение категории оставляет окном всю выборку, как у TOTAL. Разница видна на двух и более измерениях.
В прямом запросе не работает на: Vertica, MS SQL Server.
TOTAL
SUM( SUM( [ value ] ) TOTAL )Окно — вся выборка целиком; так считают общий итог для доли.
Пример.
SUM(SUM([orders.amount]) TOTAL)134 683 500 в каждой строке. Делением на это значение получают долю строки в итоге:
100.0 * SUM([orders.amount]) / SUM(SUM([orders.amount]) TOTAL)Доля категории в общей выручке — 61,4 % у «Компьютеров».
В прямом запросе не работает на: Vertica, MS SQL Server.
WITHIN
SUM( SUM( [ value ] ) WITHIN [ dim ], … )Окно — группы по перечисленным измерениям.
Пример.
SUM(SUM([orders.amount]) WITHIN [products.category])4 003 500 у «Аксессуаров» — итог внутри своей категории, а не по всей выборке. Так считают долю внутри группы.
В прямом запросе не работает на: Vertica, MS SQL Server.
Что дальше
- Все функции списком — каталог с поиском по странице.
- Вычисляемые поля — где и как написать формулу.