使用聚合函数时 CTE 表现异常
CTE is behaving unexpectedly when an aggregate function is used
当我在 CTE 中使用聚合函数时,我收到一条错误消息。下面是查询和与之关联的错误消息。当我删除聚合函数时它工作正常。我在某处错过了窍门。
代码:
;
With CTE as (
Select
sn,
ed,
sum(c) c,
row_number() over (partition by sn, ed order by sn, sum(c) desc, ed) rn
from TD
where ed >= '11/15/2018'
)
select * from CTE
错误信息:
Column TD.sn
is invalid in the select list because it is not contained in either an aggregate function or the group by clause.
您在查询中使用了聚合函数但未使用分组依据
With CTE as (
Select
sn,
ed,
sum(c) c,
row_number() over (partition by sn order by sum(c) desc) rn
from TD
where ed >= '11/15/2018'
group by sn,
ed
)
select * from CTE where rn<=3
当我在 CTE 中使用聚合函数时,我收到一条错误消息。下面是查询和与之关联的错误消息。当我删除聚合函数时它工作正常。我在某处错过了窍门。
代码:
;
With CTE as (
Select
sn,
ed,
sum(c) c,
row_number() over (partition by sn, ed order by sn, sum(c) desc, ed) rn
from TD
where ed >= '11/15/2018'
)
select * from CTE
错误信息:
Column
TD.sn
is invalid in the select list because it is not contained in either an aggregate function or the group by clause.
您在查询中使用了聚合函数但未使用分组依据
With CTE as (
Select
sn,
ed,
sum(c) c,
row_number() over (partition by sn order by sum(c) desc) rn
from TD
where ed >= '11/15/2018'
group by sn,
ed
)
select * from CTE where rn<=3