Использование инструкции OVER в вычисляемых столбцах
Вы можете выполнять расчеты в своих данных и отображать результаты в виде значений в новом столбце, который добавляется в таблицу данных. В выражении, используемом для расчета, можно использовать оператор OVER. Однако использование оператора OVER в вычисляемых столбцах отличается от его использования в пользовательских выражениях. В вычисляемых столбцах выражение OVER используется для вычисления отдельных фиксированных значений разных групп. Выражение OVER может привести к тому, что данные будут «разделены на меньшее количество записей».
При работе с вычисляемыми столбцами, как и в случае с пользовательскими выражениями, доступные оси навигации отсутствуют. Вместо этого для ссылки на столбец типа Date (или иерархию) используется выражение OVER.
В таблице данных ниже выражение
Sum([Sales]) OVER ([Fruit])
используется для вычисления значений в добавленном столбце:
Расширенный пример
Вычисленный столбец с меньшим количеством записей может быть не очень полезен в качестве отдельного столбца. Однако, если добавить еще один столбец, в котором предыдущее выражение является частью используемого выражения:
[Sales] / (Sum([Sales]) OVER ([Fruit]))
Это выражение вычисляет относительный вклад каждой продажи в общий объем продаж в течение нескольких лет в пределах своего типа фруктов. Например, 15% (30/200) от общего объема продаж яблок было в 2015 году, 35% (70/200) — в 2016 году, а остальные 50% (100/200) — в 2017 году.
В приведенной ниже таблице столбцов вычисленный столбец выбирается на оси значений с использованием суммирования.
Такой же результат будет при использовании параметра Нормированная линейчатая диаграмма с накоплением на гистограмме, показывающей результаты агрегирования Sum([Sales]).
Использование оператора OVER с методом навигации по узлам в вычисляемом столбце
В выражении, которое применяется для вычисления столбца, можно использовать оператор OVER в сочетании с методом навигации по узлам. Этот простой пример дает вам представление о том, как использовать один из методов — Previous().
В таблице данных перечислены измеренные по неделям значения веса новорожденного ребенка, которые визуализированы на графике.
Предположим, что вас интересует увеличение веса за неделю. Это можно рассчитать с помощью такого выражения:
[Weight (g)] - Sum([Weight (g)]) OVER (Previous([Week]))
Результаты можно просмотреть в таблице данных и на гистограмме, приведенных ниже.