Я пытаюсь рассчитать процентное изменение цены между днями.Поскольку дни не являются последовательными, я встраиваю в запрос вычисляемое поле, которое сообщает мне, какой это относительный день (день 1, день 2 и т. Д.).Чтобы сравнить сегодняшний день со вчерашним днем, я сместил вычисленный номер дня на 1 в подзапросе.я хочу присоединиться к внутреннему и внешнему запросу в вычисленный относительный день.Код, который я придумал:
SELECT TOP 11
P.Date,
(AVG(P.SettlementPri) - PriceY) / PriceY as PriceChange,
P.Symbol,
(RANK() OVER (ORDER BY P.Date desc)) as dayrank_Today
FROM OTE P
JOIN (SELECT TOP 11
C.Date,
AVG(SettlementPri) as PriceY,
(RANK() OVER (ORDER BY C.Date desc))+1 as dayrank_Yest
FROM OTE C
WHERE C.ComCode = 'C-'
GROUP BY c.Date) C ON dayrank_Today = C.dayrank_Yest
WHERE P.ComCode = 'C-'
GROUP BY P.Symbol, P.Date
Если я пытаюсь выполнить запрос, я получаю сообщение об ошибке, указывающее, что dayrank_Today является недопустимым столбцом.Я попытался переименовать его, квалифицировать, кричать об этом, и я приседаю.Все еще ошибка.