Оконные функции¶
Оконные функции — позволяют выполнять вычисления над группой строк, но при этом не сворачивать (не объединять) результаты в одну строку, в отличие от агрегатных.
Синтаксис формул похож на SQL.
Общий синтаксис оконной функции:
<FUNCTION_NAME> (
expression,
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Расширенный синтаксис оконной функции:
<FUNCTION_NAME> (
expression,
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
AVG (оконная)¶
Позволяет рассчитать среднее значение для данных из строк выборки (окна).
Возвращает среднее арифметическое значение выражения expression с учетом группировки.
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
AVG (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: AVG | AVG_IF | AVG_IF (оконная) | MAVG | RAVG | MEDIAN
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить среднее значение прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_avg(прибыль среднее), в Промежуточное значение указана формулаAVG (SUM ([orders_profit]) TOTAL)(1)
функция суммирует все значения прибыли, а затем делит на общее количество значений, так как не используется группировка (TOTAL)
Profit_avg_cust(прибыль среднее по клиенту), в Промежуточное значение указана формулаAVG (SUM ([orders_profit]) WITHIN [customer_id])(1)
функция суммирует значения прибыли по клиенту, так как используется группировка (WITHIN), а затем делит на количество записей по клиенту
Profit_avg_ord(прибыль среднее по заказу), в Промежуточное значение указана формулаAVG (SUM ([orders_profit]) AMONG [customer_id])(1)
функция суммирует значения прибыли по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем делит на количество записей по заказу
4.Расчетные агрегаты Profit_avg (прибыль среднее), Profit_avg_cust (прибыль среднее по клиенту) и Profit_avg_ord (прибыль среднее по заказу) определены как Агрегаты.
AVG_IF (оконная)¶
Позволяет рассчитать среднее значение для данных из строк выборки (окна), которые подходят под условие.
Возвращает среднее значение для выражения expression, которые удовлетворяют условию condition с учетом группировки. Если значения отсутствуют, то возвращается NULL.
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
AVG_IF (
expression,
condition
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: AVG | AVG (оконная) | AVG_IF | MAVG | RAVG | MEDIAN
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить среднее значение прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу, при условии, что прибыль не отрицательная.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_avg(прибыль среднее), в Промежуточное значение указана формулаAVG_IF (SUM ([orders_profit]) TOTAL)(1)
функция суммирует все значения прибыли, а затем делит на общее количество значений, так как не используется группировка (TOTAL)
Profit_avg_cust(прибыль среднее по клиенту), в Промежуточное значение указана формулаAVG_IF (SUM ([orders_profit]) WITHIN [customer_id])(1)
функция суммирует значения прибыли по клиенту, так как используется группировка (WITHIN), а затем делит на количество записей по клиенту
Profit_avg_ord(прибыль среднее по заказу), в Промежуточное значение указана формулаAVG_IF (SUM ([orders_profit]) AMONG [customer_id])(1)
функция суммирует значения прибыли по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем делит на количество записей по заказу
4.Расчетные агрегаты Profit_avg (прибыль среднее), Profit_avg_cust (прибыль среднее по клиенту) и Profit_avg_ord (прибыль среднее по заказу) определены как Агрегаты.
COUNT (оконная)¶
Позволяет рассчитать количество строк выборки (окна).
Возвращает количество элементов в заданном выражении expression с учетом группировки.
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Строка, Дата, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
COUNT (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: COUNT | COUNT_IF | COUNT_IF (оконная) | COUNTD | COUNTD_IF | COUNTD_APPROX | MCOUNT | RCOUNT
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить количество результатов расчета среднего значения прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_count(количество среднее), в Промежуточное значение указана формулаCOUNT (AVG ([orders_profit]) TOTAL)(1)
функция отображает количество записей, участвующих в расчёте среднего значения прибыли по всем записям, так как не используется группировка (TOTAL)
Profit_count_cust(количество среднее по клиенту), в Промежуточное значение указана формулаCOUNT (AVG ([orders_profit]) WITHIN [customer_id])(1)
функция отображает количество записей, участвующих в расчёте среднего значения прибыли по клиенту, так как используется группировка (WITHIN)
Profit_count_ord(количество среднее по заказу), в Промежуточное значение указана формулаCOUNT (AVG ([orders_profit]) AMONG [customer_id])(1)
функция отображает количество записей, участвующих в расчёте среднего значения прибыли по заказу, так как используется группировка (AMONG) НЕ по клиенту
4.Расчетные агрегаты Profit_count (количество среднее), Profit_count_cust (количество среднее по клиенту) и Profit_count_ord (количество среднее по заказу) определены как Агрегаты.
COUNT_IF (оконная)¶
Позволяет рассчитать количество строк выборки (окна), которые подходят под условие.
Возвращает количество элементов в выражении expression, которые удовлетворяют условию condition с учетом группировки.
COUNT_IF (
expression,
condition
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Строка, Дата, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
COUNT_IF (
expression,
condition
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: COUNT | COUNT (оконная) | COUNT_IF | COUNTD | COUNTD_IF | COUNTD_APPROX | MCOUNT | RCOUNT
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить количество результатов расчета среднего значения прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу, при условии, что прибыль не отрицательная.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_count(количество среднее), в Промежуточное значение указана формулаCOUNT_IF (AVG ([orders_profit]), [orders_profit] > 0 TOTAL)(1)
функция отображает количество записей, участвующих в расчёте среднего значения прибыли по всем записям, где прибыль положительная, так как не используется группировка (TOTAL) и применяется условие >0
Profit_count_cust(количество среднее по клиенту), в Промежуточное значение указана формулаCOUNT_IF (AVG ([orders_profit]), [orders_profit] > 0 WITHIN [customer_id])(1)
функция отображает количество записей, где прибыль положительная, участвующих в расчёте среднего значения прибыли по клиенту, так как используется группировка (WITHIN) и применяется условие >0
Profit_count_ord(количество среднее по заказу), в Промежуточное значение указана формулаCOUNT_IF (AVG ([orders_profit]), [orders_profit] > 0 AMONG [customer_id])(1)
функция отображает количество записей, где прибыль положительная, участвующих в расчёте среднего значения прибыли по заказу, так как используется группировка (AMONG) НЕ по клиенту и применяется условие >0
4.Расчетные агрегаты Profit_count (количество среднее), Profit_count_cust (количество среднее по клиенту) и Profit_count_ord (количество среднее по заказу) определены как Агрегаты.
FIRST¶
Позволяет отобразить первое значение выборки (окна).
Возвращает значение из первой строки выражения expression с учетом группировки и сортировки.
FIRST (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное), Строка, Дата, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
FIRST (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Исходные данные: Доступны данные по датам заказов, клиентам и прибыли по заказам.
Цель: Отобразить суммарную прибыль по всем заказам и сумму прибыли по заказам клиента.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_date (дата заказа) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(сумма прибыли), в Промежуточное значение указана формулаFIRST (SUM ([orders_profit]) TOTAL ORDER BY [order_date] ASC)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL) и выбирает сумму по самой ранней дате заказа
Profit_sum_cust(сумма прибыли по клиенту), в Промежуточное значение указана формулаFIRST (SUM ([orders_profit]) WITHIN [customer_id] ORDER BY [order_date] ASC)(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN), сортирует по дате и отображает первое значение по самой ранней дате заказа
4.Расчетные агрегаты Profit_sum (сумма прибыли), Profit_sum_cust (сумма прибыли по клиенту) и определены как Агрегаты.
LAG¶
Позволяет отобразить значение из заданной строки выборки (окна).
Возвращает значение expression из выражения со смещением offset(1)(по умолчанию 1 - предыдущее значение) с учетом группировки. При отсутствии значения возвращает NULL или default, если задано.
положительное (N) - значение в предыдущей N строке или N строк назад
отрицательное (-N) - значение в следующей N строке или N строк вперед
LAG (
expression,
offset,
default
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression и default: Число (целое), Число (дробное), Строка, Дата, Логическое
Тип данных offset: Число (целое)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
LAG (
expression,
offset,
default
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Исходные данные: Доступны данные по датам заказов, клиентам и прибыли по заказам.
Цель: Отобразить итоговую прибыль предыдущего заказа для всех заказов и прибыль предыдущего заказа по клиенты.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_date (дата заказа) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(сумма прибыли), в Промежуточное значение указана формулаLAG (SUM ([orders_profit]), 1, 0 TOTAL ORDER BY [order_date] ASC)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL) и выбирает сумму предыдущего по дате заказа
Profit_sum_cust(сумма прибыли по клиенту), в Промежуточное значение указана формулаLAG (SUM ([orders_profit]), 1, 0 WITHIN [customer_id] ORDER BY [order_date] ASC)(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN) и выбирает сумму предыдущего по дате заказа клиента
4.Расчетные агрегаты Profit_sum (сумма прибыли), Profit_sum_cust (сумма прибыли по клиенту) и определены как Агрегаты.
LAST¶
Позволяет отобразить последнее значение выборки (окна).
Возвращает значение из последней строки выражения expression с учетом группировки.
LAST (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное), Строка, Дата, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
LAST (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Исходные данные: Доступны данные по датам заказов, клиентам и прибыли по заказам.
Цель: Отобразить последнее значение результатов расчета суммы прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_date (дата заказа) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(прибыль сумма), в Промежуточное значение указана формулаLAST (SUM ([orders_profit]) TOTAL ORDER BY [order_date] ASC)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL) и выбирает сумму по самой поздней дате заказа
Profit_sum_cust(прибыль сумма по клиенту), в Промежуточное значение указана формулаLAST (SUM ([orders_profit]) WITHIN [customer_id] ORDER BY [order_date] ASC)(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN) и выбирает сумму по самой поздней дате заказа клиента
4.Расчетные агрегаты Profit_sum (прибыль сумма), Profit_sum_cust (прибыль сумма по клиенту) и Profit_sum_ord (прибыль сумма по заказу) определены как Агрегаты.
MAVG¶
Позволяет рассчитать скользящее среднее значение выборки (окна). На расчеты влияет порядок сортировки.
Возвращает скользящее среднее значение для expression текущей записи и rows_1 предшествующих (либо последующих при отрицательном значении), rows_2 последующих записей с учетом группировки и сортировки. Параметр rows_2 используется, когда необходимо захватить для расчета как предыдущие так и последующие записи.
MAVG (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное)
Тип данных rows_1 и rows_2: Число (целое)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MAVG (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: AVG | AVG (оконная) | AVG_IF | AVG_IF (оконная) | RAVG | MEDIAN
Исходные данные: Доступны данные по датам заказа и прибыли по заказам.
Цель: Отобразить скользящее среднее прибыли для заказа и двух предыдущих.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Order_date (дата заказа) определено как Группы, поле Profit_sum (сумма прибыли за месяц) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_mavg (прибыль среднее), в Промежуточное значение указана формула MAVG (SUM ([orders_profit]), 2, 0 TOTAL ORDER BY [order_date] ASC)(1)
функция суммирует прибыль по текущей дате заказа, так как не используется группировка (TOTAL), а затем рассчитывает среднее с учетом значения сумм для двух предыдущих дат, отсортированных по возрастанию
3.Расчетный агрегат Profit_mavg (прибыль среднее) определен как Столбцы.
MAX (оконная)¶
Позволяет рассчитать максимальное значение выборки (окна).
Возвращает максимальное значение для expression с учетом группировки.
Возвращаемые значения для типов данных
| Тип данных | Результат |
|---|---|
| Дата/ Дата и время | поздняя из дат и позднее из времени |
| Число (дробное) | наибольшее число |
| Число (целое) | наибольшее число |
| Строка | последнюю строку в алфавитном порядке |
| Логическое | TRUE |
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Дата, Строка, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MAX (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MAX | GREATEST | MAX | MAX_IF | MAX_IF (оконная) | MMAX | RMAX
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить максимальное значение результатов расчета суммы прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(прибыль сумма), в Промежуточное значение указана формулаMAX (SUM ([orders_profit]) TOTAL)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL), а затем выводит максимальное значение
Profit_sum_cust(прибыль сумма по клиенту), в Промежуточное значение указана формулаMAX (SUM ([orders_profit]) WITHIN [customer_id])(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN), а затем выводит максимальное значение
Profit_sum_ord(прибыль сумма по заказу), в Промежуточное значение указана формулаMAX (SUM ([orders_profit]) AMONG [customer_id])(1)
функция суммирует прибыль по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем выводит максимальное значение
4.Расчетные агрегаты Profit_sum (прибыль сумма), Profit_sum_cust (прибыль сумма по клиенту) и Profit_sum_ord (прибыль сумма по заказу) определены как Агрегаты.
MAX_IF (оконная)¶
Позволяет рассчитать максимальное значение выборки (окна), которые подходят под условие.
Возвращает максимальное значение для expression, которые удовлетворяют условию condition с учетом группировки.
Возвращаемые значения для типов данных
| Тип данных | Результат |
|---|---|
| Дата/ Дата и время | поздняя из дат и позднее из времени |
| Число (дробное) | наибольшее число |
| Число (целое) | наибольшее число |
| Строка | последнюю строку в алфавитном порядке |
| Логическое | TRUE |
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Дата, Строка, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MAX_IF (
expression,
condition
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MAX | GREATEST | MAX | MAX (оконная) | MAX_IF | MMAX | RMAX
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить максимальное значение результатов расчета суммы прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу, при условии, что прибыль не отрицательная.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(прибыль сумма), в Промежуточное значение указана формулаMAX_IF (SUM ([orders_profit]), [orders_profit] > 0 TOTAL)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL), а затем выводит максимальное значение
Profit_sum_cust(прибыль сумма по клиенту), в Промежуточное значение указана формулаMAX_IF (SUM ([orders_profit]), [orders_profit] > 0 WITHIN [customer_id])(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN), а затем выводит максимальное значение
Profit_sum_ord(прибыль сумма по заказу), в Промежуточное значение указана формулаMAX_IF (SUM ([orders_profit]), [orders_profit] > 0 AMONG [customer_id])(1)
функция суммирует прибыль по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем выводит максимальное значение
4.Расчетные агрегаты Profit_sum (прибыль сумма), Profit_sum_cust (прибыль сумма по клиенту) и Profit_sum_ord (прибыль сумма по заказу) определены как Агрегаты.
MCOUNT¶
Позволяет рассчитать количество значений выборки (окна). На расчеты влияет порядок сортировки.
Возвращает количество значений не равных NULL для expression текущей записи и rows_1 предшествующих (либо последующих при отрицательном значении), rows_2 последующих записей с учетом группировки и сортировки. Параметр rows_2 используется, когда необходимо захватить для расчета как предыдущие так и последующие записи.
MCOUNT (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное), Дата, Строка, Логическое
Тип данных rows_1 и rows_2: Число (целое)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MCOUNT (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: COUNT | COUNT (оконная) | COUNT_IF | COUNT_IF (оконная) | COUNTD | COUNTD_IF | COUNTD_APPROX | RCOUNT
Исходные данные: Доступны данные по датам заказов, заказам и клиентам.
Цель: Отобразить количество заказов в последних 3 строках по всему набору и по клиенту.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Orders (заказ) и Order_date (дата заказа) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Count(количество), в Промежуточное значение указана формулаMCOUNT (SUM ([orders]), 2, 0 TOTAL ORDER BY [order_date] DESC)(1)
функция отображает количество записей для текущей даты и двух предыдущих по всем записям, так как не используется группировка (TOTAL)
Count_cust(количество по клиенту), в Промежуточное значение указана формула`MCOUNT (SUM ([orders]), 2, 0 WITHIN [customer_id] ORDER BY [order_date] DESC)(1)
функция отображает количество записей для текущей даты заказа клиента и двух предыдущих по клиенту, так как используется группировка (WITHIN)
4.Расчетные агрегаты Count (количество), Count_cust (количество по клиенту) определены как Агрегаты.
MIN (оконная)¶
Позволяет рассчитать минимальное значение выборки (окна).
Возвращает минимальное значение для expression с учетом группировки.
Возвращаемые значения для типов данных
| Тип данных | Результат |
|---|---|
| Дата/ Дата и время | ранняя из дат и раннее из времени |
| Число (дробное) | наименьшее число |
| Число (целое) | наименьшее число |
| Строка | первую строку в алфавитном порядке |
| Логическое | FALSE |
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Дата, Строка, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MIN (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MIN | LEAST | MIN | MIN_IF | MIN_IF (оконная) | MMIN | RMIN
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить минимальное значение результатов расчета суммы прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(прибыль сумма), в Промежуточное значение указана формулаMIN (SUM ([orders_profit]) TOTAL)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL), а затем выводит минимальное значение
Profit_sum_cust(прибыль сумма по клиенту), в Промежуточное значение указана формулаMIN (SUM ([orders_profit]) WITHIN [customer_id])(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN), а затем выводит минимальное значение
Profit_sum_ord(прибыль сумма по заказу), в Промежуточное значение указана формулаMIN (SUM ([orders_profit]) AMONG [customer_id])(1)
функция суммирует прибыль по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем выводит минимальное значение
4.Расчетные агрегаты Profit_sum (прибыль сумма), Profit_sum_cust (прибыль сумма по клиенту) и Profit_sum_ord (прибыль сумма по заказу) определены как Агрегаты.
MIN_IF (оконная)¶
Позволяет рассчитать минимальное значение выборки (окна), которые подходят под условие.
Возвращает минимальное значение для expression, которые удовлетворяют условию condition с учетом группировки.
Возвращаемые значения для типов данных
| Тип данных | Результат |
|---|---|
| Дата/ Дата и время | ранняя из дат и раннее из времени |
| Число (дробное) | наименьшее число |
| Число (целое) | наименьшее число |
| Строка | первую строку в алфавитном порядке |
| Логическое | FALSE |
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Дата, Строка, Логическое
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MIN_IF (
expression,
condition
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MIN | LEAST | MIN | MIN (оконная) | MIN_IF | MMIN | RMIN
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить минимальное значение результатов расчета суммы прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу, при условии, что прибыль не отрицательная.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(прибыль сумма), в Промежуточное значение указана формулаMIN_IF (SUM ([orders_profit]), [orders_profit] > 0 TOTAL)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL), а затем выводит минимальное значение
Profit_sum_cust(прибыль сумма по клиенту), в Промежуточное значение указана формулаMIN_IF (SUM ([orders_profit]), [orders_profit] > 0 WITHIN [customer_id])(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN), а затем выводит минимальное значение
Profit_sum_ord(прибыль сумма по заказу), в Промежуточное значение указана формулаMIN_IF (SUM ([orders_profit]), [orders_profit] > 0 AMONG [customer_id])(1)
функция суммирует прибыль по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем выводит минимальное значение
4.Расчетные агрегаты Profit_sum (прибыль сумма), Profit_sum_cust (прибыль сумма по клиенту) и Profit_sum_ord (прибыль сумма по заказу) определены как Агрегаты.
MMAX¶
Позволяет рассчитать скользящее максимальное значение выборки (окна). На расчеты влияет порядок сортировки.
Возвращает скользящее максимальное значение для expression текущей записи и rows_1 предшествующих (либо последующих при отрицательном значении), rows_2 последующих записей с учетом группировки и сортировки. Параметр rows_2 используется, когда необходимо захватить для расчета как предыдущие так и последующие записи.
MMAX (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное)
Тип данных rows_1 и rows_2: Число (целое)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MMAX (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MAX | GREATEST | MAX | MAX (оконная) | MAX_IF | MAX_IF (оконная) | RMAX
Исходные данные: Доступны данные по датам заказа и прибыли по заказам.
Цель: Отобразить максимальную прибыль для месяца и двух предыдущих.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Month_orders (месяц заказа) определено как Группы, поле Profit_sum (сумма прибыли за месяц) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_max_3m (прибыль макс. за 3мес), в Промежуточное значение указана формула MMAX (SUM ([orders_profit]), 2 TOTAL)(1)
функция суммирует прибыль по текущему месяцу, так как не используется группировка (TOTAL), а затем рассчитывает максимальное с учетом значения для двух предыдущих месяцев
3.Расчетный агрегат Profit_max_3m (прибыль макс. за 3мес) определен как Столбцы.
MMIN¶
Позволяет рассчитать скользящее минимальное значение выборки (окна). На расчеты влияет порядок сортировки.
Возвращает скользящее минимальное значение для expression текущей записи и rows_1 предшествующих (либо последующих при отрицательном значении), rows_2 последующих записей с учетом группировки и сортировки. Параметр rows_2 используется, когда необходимо захватить для расчета как предыдущие так и последующие записи.
MMIN (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное)
Тип данных rows_1 и rows_2: Число (целое)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MMIN (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MIN | LEAST | MIN | MIN (оконная) | MIN_IF | MIN_IF (оконная) | RMIN
Исходные данные: Доступны данные по месяцам заказа и прибыли по заказам.
Цель: Отобразить скользящее минимальное значение прибыли для месяца и двух предыдущих.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Month_orders (месяц заказа) определено как Группы, поле Profit_sum (сумма прибыли за месяц) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_min_3m (прибыль мин. за 3мес), в Промежуточное значение указана формула MMIN (SUM ([orders_profit]), 2 TOTAL)(1)
функция суммирует прибыль по текущему месяцу, так как не используется группировка (TOTAL), а затем рассчитывает минимальное с учетом значения для двух предыдущих месяцев
3.Расчетный агрегат Profit_min_3m (прибыль мин. за 3мес) определен как Столбцы.
MSUM¶
Позволяет рассчитать скользящее значение суммы выборки (окна). На расчеты влияет порядок сортировки.
Возвращает скользящее значение суммы для expression текущей записи и rows_1 предшествующих (либо последующих при отрицательном значении), rows_2 последующих записей с учетом группировки и сортировки. Параметр rows_2 используется, когда необходимо захватить для расчета как предыдущие так и последующие записи.
MSUM (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное)
Тип данных rows_1 и rows_2: Число (целое)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
MSUM (
expression,
rows_1,
rows_2
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: RSUM | SUM | SUM (оконная) | SUM_IF | SUM_IF (оконная)
Исходные данные: Доступны данные по месяцам заказа и прибыли по заказам.
Цель: Отобразить скользящее значение суммы прибыли для месяца и двух предыдущих.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Month_orders (месяц заказа) определено как Группы, поле Profit_sum (сумма прибыли за месяц) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_sum_3m (прибыль сумма за 3мес), в Промежуточное значение указана формула MSUM (SUM ([orders_profit]), 2 TOTAL)(1)
функция суммирует прибыль по текущему месяцу, так как не используется группировка (TOTAL), а затем рассчитывает сумму с учетом значения для двух предыдущих месяцев
3.Расчетный агрегат Profit_sum_3m (прибыль сумма за 3мес) определен как Столбцы.
RANK¶
Позволяет ранжировать значения выборки (окна). Присваивает одинаковым значениям один ранг, а последующая нумерация сдвигается от повторов.
Возвращает порядковый номер expression после сортировки по direction с учетом группировки. При пустом параметре direction по умолчанию применяется значение desc - от большего к меньшему, указав значение asc применится от меньшего к большему.
Для строк выборки с одинаковыми значениями присваивается одинаковый ранг, а следующей строке с отличным значением присваивается ранг с учетом повторов. Например, 1 и 2 строка - ранг 1, 3 строка - ранг 3.
Недоступно применение функции в виджете Сводная таблица, построенном на группах-строках.
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Дата, Строка, Логическое
Тип данных direction: Строка
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
RANK (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: RANK_DENSE
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Ранжировать от меньшего к большему результаты расчета суммы прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum_rang(прибыль сумма ранг), в Промежуточное значение указана формулаRANK (SUM ([orders_profit]), asc TOTAL)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL), а затем ранжирует значения от меньшего к большему
Profit_sum_rang_cust(прибыль сумма ранг по клиенту), в Промежуточное значение указана формулаRANK (SUM ([orders_profit]), asc WITHIN [customer_id])(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN), а затем ранжирует значения от меньшего к большему
Profit_sum_rang_ord(прибыль сумма ранг по заказу), в Промежуточное значение указана формулаRANK (SUM ([orders_profit]), asc AMONG [customer_id])(1)
функция суммирует прибыль по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем ранжирует значения от меньшего к большему
4.Расчетные агрегаты Profit_sum_rang (прибыль сумма ранг), Profit_sum_rang_cust (прибыль сумма ранг по клиенту) и Profit_sum_rang_ord (прибыль сумма ранг по заказу) определены как Агрегаты.
RANK_DENSE¶
Позволяет ранжировать значения выборки (окна). Присваивает одинаковым значениям один ранг, сохраняя последовательность нумерации.
Возвращает порядковый номер expression после сортировки по direction с учетом группировки. При пустом параметре direction по умолчанию применяется значение desc - от большего к меньшему, указав значение asc применится от меньшего к большему.
Для строк выборки с одинаковыми значениями присваивается одинаковый ранг, следующей строке с отличным значениям присваивается следующий по-порядку ранг. Например, 1 и 2 строка - ранг 1, 3 строка - ранг 2.
Недоступно применение функции в виджете Сводная таблица, построенном на группах-строках.
RANK_DENSE (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное), Дата, Строка, Логическое
Тип данных direction: Строка
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
RANK_DENSE (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: RANK
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Ранжировать от меньшего к большему результаты расчета суммы прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum_rang(прибыль сумма ранг), в Промежуточное значение указана формулаRANK_DENSE (SUM ([orders_profit]), asc TOTAL)(1)
функция суммирует прибыль по всем записям, так как не используется группировка (TOTAL), а затем ранжирует значения от меньшего к большему
Profit_sum_rang_cust(прибыль сумма ранг по клиенту), в Промежуточное значение указана формулаRANK_DENSE (SUM ([orders_profit]), asc WITHIN [customer_id])(1)
функция суммирует прибыль по клиенту, так как используется группировка (WITHIN), а затем ранжирует значения от меньшего к большему
Profit_sum_rang_ord(прибыль сумма ранг по заказу), в Промежуточное значение указана формулаRANK_DENSE (SUM ([orders_profit]), asc AMONG [customer_id])(1)
функция суммирует прибыль по заказу, так как используется группировка (AMONG) НЕ по клиенту, а затем ранжирует значения от меньшего к большему
4.Расчетные агрегаты Profit_sum_rang (прибыль сумма ранг), Profit_sum_rang_cust (прибыль сумма ранг по клиенту) и Profit_sum_rang_ord (прибыль сумма ранг по заказу) определены как Агрегаты.
RAVG¶
Позволяет рассчитать среднее значение обозначенной части выборки (окна).
Возвращает среднее значение для expression текущей записи и части выборки direction с учетом группировки. Параметр direction в значении asc (по умолчанию) ограничивает выборку от первой до текущей записи, в значении desc - от текущей до последней.
RAVG (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное)
Тип данных direction: Строка
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
RAVG (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: AVG | AVG (оконная) | AVG_IF | AVG_IF (оконная) | MAVG | MEDIAN
Исходные данные: Доступны данные по датам заказа и прибыли по заказам.
Цель: Отобразить нарастающее среднее прибыли.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Order_date (дата заказа) определено как Группы, поле Orders_profit (прибыль) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_avg (прибыль среднее), в Промежуточное значение указана формула RAVG (SUM ([orders_profit]) ORDER BY [order_date])(1)
функция суммирует прибыль по всем датам в порядке возрастания и расчитывает среднее
3.Расчетный агрегат Profit_avg (прибыль среднее) определен как Столбцы.
RCOUNT¶
Позволяет рассчитать количество строк в обозначенной части выборки (окна).
Возвращает количество элементов в expression текущей записи и части выборки direction с учетом группировки. Параметр direction в значении asc (по умолчанию) ограничивает выборку от первой до текущей записи, в значении desc - от текущей до последней.
RCOUNT (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное), Строка, Дата, Логическое
Тип данных direction: Строка
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
RCOUNT (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: COUNT | COUNT (оконная) | COUNT_IF | COUNT_IF (оконная) | COUNTD | COUNTD_IF | COUNTD_APPROX | MCOUNT
Исходные данные: Доступны данные по датам заказа и прибыли по заказам.
Цель: Отобразить нарастающее количество строк для расчета суммы прибыли.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Order_date (дата заказа) определено как Группы, поле Orders_profit (прибыль) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_count (количество), в Промежуточное значение указана формула RCOUNT (SUM ([orders_profit]) TOTAL ORDER BY [order_date])(1)
функция суммирует количество строк по датам по возрастанию, так как не используется группировка (TOTAL)
3.Расчетный агрегат Profit_count (количество) определен как Столбцы.
RMAX¶
Позволяет рассчитать максимальное значение в обозначенной части выборки (окна).
Возвращает максимальное значение в expression текущей записи и части выборки direction с учетом группировки. Параметр direction в значении asc (по умолчанию) ограничивает выборку от первой до текущей записи, в значении desc - от текущей до последней.
Возвращаемые значения для типов данных
| Тип данных | Результат |
|---|---|
| Дата/ Дата и время | поздняя из дат и позднее из времени |
| Число (дробное) | наибольшее число |
| Число (целое) | наибольшее число |
| Строка | последнюю строку в алфавитном порядке |
| Логическое | TRUE |
RMAX (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное), Строка, Дата, Логическое
Тип данных direction: Строка
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
RMAX (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MAX | GREATEST | MAX | MAX (оконная) | MAX_IF | MAX_IF (оконная) | MMAX
Исходные данные: Доступны данные по датам заказа и прибыли по заказам.
Цель: Отобразить нарастающий максимум суммы прибыли.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Order_date (дата заказа) определено как Группы, поле Orders_profit (прибыль) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_max (прибыль макс.), в Промежуточное значение указана формула RMAX (SUM ([orders_profit]) TOTAL ORDER BY [order_date])(1)
функция суммирует прибыль по датам последовательно по возрастанию и определяет максимум
3.Расчетный агрегат Profit_max (прибыль макс.) определен как Столбцы.
RMIN¶
Позволяет рассчитать минимальное значение в обозначенной части выборки (окна).
Возвращает минимальное значение в expression текущей записи и части выборки direction с учетом группировки. Параметр direction в значении asc (по умолчанию) ограничивает выборку от первой до текущей записи, в значении desc - от текущей до последней.
Возвращаемые значения для типов данных
| Тип данных | Результат |
|---|---|
| Дата/ Дата и время | ранняя из дат и раннее из времени |
| Число (дробное) | наименьшее число |
| Число (целое) | наименьшее число |
| Строка | первую строку в алфавитном порядке |
| Логическое | FALSE |
RMIN (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное), Строка, Дата, Логическое
Тип данных direction: Строка
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
RMIN (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: ARG_MIN | LEAST | MIN | MIN (оконная) | MIN_IF | MIN_IF (оконная) | MMIN
Исходные данные: Доступны данные по датам заказа и прибыли по заказам.
Цель: Отобразить нарастающий минимум суммы прибыли.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Order_date (дата заказа) определено как Группы, поле Orders_profit (прибыль) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_min (прибыль мин.), в Промежуточное значение указана формула RMIN (SUM ([orders_profit]) TOTAL ORDER BY [order_date])(1)
функция суммирует прибыль по датам последовательно по возрастанию и определяет минимум
3.Расчетный агрегат Profit_min (прибыль мин.) определен как Столбцы.
RSUM¶
Позволяет рассчитать сумму значений в обозначенной части выборки (окна).
Возвращает сумму значений expression текущей записи и части выборки direction с учетом группировки. Параметр direction в значении asc (по умолчанию) ограничивает выборку от первой до текущей записи, в значении desc - от текущей до последней.
RSUM (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
)
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
При вызове функции доступно применение сортировки ORDER BY после группировки. Сортировка по полям применяется для расчетов и важна для функций, в которых расчеты явно зависят от порядка сортировки. Для указания направления сортировки применяются:
ASC- по возрастанию, используется по умолчанию;DESC- по убыванию.
Итоговая сортировка полей виджета зависит от сортировки для групп, скрытых полей и агрегатов.
Тип данных expression: Число (целое), Число (дробное)
Тип данных direction: Строка
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
RSUM (
expression,
direction
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
ORDER BY field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: MSUM | SUM | SUM (оконная) | SUM_IF | SUM_IF (оконная)
Исходные данные: Доступны данные по датам заказа и прибыли по заказам.
Цель: Отобразить нарастающую сумму прибыли.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Order_date (дата заказа) определено как Группы, поле Orders_profit (прибыль) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_sum (прибыль сумма), в Промежуточное значение указана формула RSUM (SUM ([orders_profit]) TOTAL ORDER BY [order_date])(1)
функция суммирует прибыль по всем датам в порядке возрастания
3.Расчетный агрегат Profit_sum (прибыль сумма) определен как Столбцы.
SUM (оконная)¶
Позволяет рассчитать сумму значений для данных из строк выборки (окна).
Возвращает сумму значений выражения expression с учетом группировки.
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
SUM (
expression
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: MSUM | RSUM | SUM | SUM_IF | SUM_IF (оконная)
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить суммарное значение прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(прибыль сумма), в Промежуточное значение указана формулаSUM (SUM ([orders_profit]) TOTAL)(1)
функция суммирует все значения прибыли, так как не используется группировка (TOTAL)
Profit_sum_cust(прибыль сумма по клиенту), в Промежуточное значение указана формулаSUM (SUM ([orders_profit]) WITHIN [customer_id])(1)
функция суммирует значения прибыли по клиенту, так как используется группировка (WITHIN)
Profit_sum_ord(прибыль сумма по заказу), в Промежуточное значение указана формулаSUM (SUM ([orders_profit]) AMONG [customer_id])(1)
функция суммирует значения прибыли по заказу, так как используется группировка (AMONG) НЕ по клиенту
4.Расчетные агрегаты Profit_sum (прибыль сумма), Profit_sum_cust (прибыль сумма по клиенту) и Profit_sum_ord (прибыль сумма по заказу) определены как Агрегаты.
SUM_IF (оконная)¶
Позволяет рассчитать сумму значений для данных из строк выборки (окна), которые подходят под условие.
Возвращает сумму значений для выражения expression, которые удовлетворяют условию condition с учетом группировки. Если значения отсутствуют, то возвращается NULL.
При вызове функции применяется группировка:
WITHIN- используется группировка по указанным полям field_N. В field_N необходимо указывать данные - Группы в структуре виджета;AMONG- используется группировка по полям, кроме field_N. В field_N необходимо указывать данные - Группы в структуре виджета;TOTAL- без группировки, для расчета используются все данные выборки.
Для виджетов вида Таблица и Сводная таблица поддерживается работа только с верхним(1) уровнем вложенности группировки в WITHIN или TOTAL без группировки. Группировка AMONG не применяется.
В качестве expression оконная функция принимает только результат агрегации.
при группировке по полям [A], [B] - [A] верхний уровень группировки
Тип данных expression: Число (целое), Число (дробное)
Для расширения возможностей функций доступно управление уровнем детализации (LOD):
FIXED— данные группируются по перечисленным полям (field_1, ..., field_N),(1) игнорируя поля, используемые для группировки в виджете;INCLUDE— перечисленные поля (field_1, ..., field_N)(2) добавляются к группировке в виджете;EXCLUDE— перечисленные поля (field_1, ..., field_N)(3) исключаются из группировки в виджете.
при пустом списке полей все данные агрегируются в одной группе
при пустом списке полей применяется группировка виджета
при пустом списке полей применяется группировка виджета
Для расширения возможностей функций доступно управление вычислениями до фильтрации. Секция BEFORE FILTER BY указывает, что функция будет вычисляться до фильтрации по перечисленным полям.
Секция BEFORE FILTER BY поддерживается в агрегатных, оконных функциях и при использовании LOD-выражений.
Расширенный синтаксис:
SUM_IF (
expression,
condition
TOTAL | WITHIN field_1, ..., field_N | AMONG field_1, ..., field_N
BEFORE FILTER BY field_1, ..., field_N
FIXED field_1, ..., field_N | INCLUDE field_1, ..., field_N | EXCLUDE field_1, ..., field_N
)
LOD-выражения и секция BEFORE FILTER BY доступны только для промежуточных значений виджетов вида Таблица агрегатов и итоговых значений виджетов вида Таблица агрегатов и Таблица.
Обратите внимание
Для расчета итоговых значений по агрегатам с LOD-выражениями с двумя и более группировками в них(3) необходимо агрегировать формулу промежуточного значения. Например, формулу AVG ([field_1] FIXED [field_2], [field_3]) привести к виду SUM (AVG ([field_1] FIXED [field_2], [field_3])).
Недоступно использование НЕ пустых INCLUDE и EXCLUDE на верхнем(1) уровне вложенности агрегации с полями, которых нет в виджете.
Агрегации одного(2) уровня вложенности с НЕ пустыми EXCLUDE и FIXED должны быть согласованы: хотя бы одна из них должна содержать все поля детализации. Если функция_1 использует [A], то функция_2 должна использовать [A], [B].
в формуле SUM (AVG()) - SUM верхний уровень агрегации
в формуле SUM (AVG(), ANY()) - AVG и ANY агрегации одного уровня
формула вида SUM ([] FIXED [], [])
Похожие: MSUM | RSUM | SUM | SUM_IF | SUM (оконная)
Исходные данные: Доступны данные по заказам, клиентам и прибыли по заказам.
Цель: Отобразить суммарное значение прибыли по всем заказам, с группировкой по клиенту и группировкой по заказу, при условии, что прибыль не отрицательная.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Customer_id (клиент), Order_id (заказ) и Orders_profit (прибыль) определены как Группы.
3.В Расчетные агрегаты добавлены новые агрегаты:
Profit_sum(прибыль сумма), в Промежуточное значение указана формулаSUM_IF (SUM ([orders_profit]), [orders_profit] > 0 TOTAL)(1)
функция суммирует все значения прибыли, так как не используется группировка (TOTAL)
Profit_sum_cust(прибыль сумма по клиенту), в Промежуточное значение указана формулаSUM_IF (SUM ([orders_profit]), [orders_profit] > 0 WITHIN [customer_id])(1)
функция суммирует значения прибыли по клиенту, так как используется группировка (WITHIN)
Profit_sum_ord(прибыль сумма по заказу), в Промежуточное значение указана формулаSUM_IF (SUM ([orders_profit]), [orders_profit] > 0 AMONG [customer_id])(1)
функция суммирует значения прибыли по заказу, так как используется группировка (AMONG) НЕ по клиенту
4.Расчетные агрегаты Profit_sum (прибыль сумма), Profit_sum_cust (прибыль сумма по клиенту) и Profit_sum_ord (прибыль сумма по заказу) определены как Агрегаты.






































































































