在下面的CTE中,在它之外,我尝试使用RowNum,但它不被识别。
;with cte as(
select *
,min([Close]) OVER(PARTITION BY YEAR(Date),Crypto) AS 'Min'
,max([Close]) OVER(PARTITION BY YEAR(Date),Crypto) AS 'Max'
from Crypto
)
select [Crypto], [Date],
CASE (min([Close]) OVER(PARTITION BY YEAR(Date),Crypto)) WHEN [Close]
THEN (min([Close]) OVER(PARTITION BY YEAR(Date),Crypto)) END as Min,
CASE (max([Close]) OVER(PARTITION BY YEAR(Date),Crypto)) WHEN [Close]
THEN (max([Close]) OVER(PARTITION BY YEAR(Date),Crypto)) END as Max,
RowNum = row_number() OVER(PARTITION BY YEAR(Date),Crypto, 'Min' ORDER BY YEAR(Date) desc)
from cte
where ([Close] = Min or [Close] = Max) and TowNum < 3
我不知道问题出在哪里。
where ([Close] = Min or [Close] = Max) and TowNum < 3
我认为您在最后一行将“RowNum”错误拼写为“TowNum”。
你是对的,拼写错误,但我改正后还是不行。