У меня есть кросс-таблица, которая агрегирует значения по месяцам и годам как средние значения. Единственный оставшийся компонент - это расчет спреда между двумя значениями. столбцы функций. Пользователь может выбрать два узла, в которых он хочет видеть спреды. Пользователь также может выбрать год.
Вот код:
PARAMETERS [Node 1] Long, [Node 2] Long, [Year] Long;
TRANSFORM Format(Avg([Monthly values].[total_lmp_on]),"Fixed") AS AVG_ON_LMP
SELECT [Monthly values].Month, [Monthly values].Year
FROM [Monthly values]
WHERE ((([Monthly values].pnode_id)=[Node 1] Or ([Monthly values].pnode_id)=[Node 2])AND [Monthly values].Year = [Year])
GROUP BY [Monthly values].Month, [Monthly values].Year
PIVOT [Monthly values].pnode_id;
Пользователю предлагается Узел 1, Узел 2 и год. Скажем:
- Узел 1: 12345
- Узел 2: 6789
- Год: 2017
Будет показано следующее:
Месяц -------------- Год ----------- -------------- 12345 6789
Jan ----------------- 2017 ------------ 10 --------------- --20
Февраль ----------------- 2017 ------------ 15 --------------- --15
Март 2017 ---------------- ------------ 5 ---------------- -0
Апрель ----------------- 2017 ------------ 20 --------------- --10
проблема
Как я могу добавить столбец, который даст мне разброс между двумя выбранными узлами? Который будет выглядеть так:
Месяц -------------- Год ----------- -------------- 12345 6789 ---- --------- Spread
Jan ----------------- 2017 ------------ 10 --------------- --20 ---------------- (- 10)
Февраль ----------------- 2017 ------------ 15 --------------- --15 ----------------- (0)
Март 2017 ---------------- ------------ 5 ---------------- -0 ------------------ (5) * +1040 *
Апрель ----------------- 2017 ------------ 20 --------------- --10 --------------- (10) * * тысяча сорок два
Я вполне уверен, что это невозможно, но хотел бы исчерпать все ресурсы. Или, если есть какие-либо другие варианты.