可以在一个组中做一个案例吗?与此类似:
select * from table
GROUP BY
CASE WHEN @Attivita=0 THEN (RANK() OVER (GROUP BY Nome,AccountID,Matricola DESC))
END
谢谢
可以在一个组中做一个案例吗?与此类似:
select * from table
GROUP BY
CASE WHEN @Attivita=0 THEN (RANK() OVER (GROUP BY Nome,AccountID,Matricola DESC))
END
谢谢
您必须按所有选定(非聚合)列分组..
因此,如果您select *
需要按所有人分组...
如果不是group by
你的意思,order by
那么是的,你可以..
不:这没有任何意义。
你不能
你想做什么,请输入/输出和模式。
编辑,基于 gaby 的回答
select
*
from
(
SELECT
*, RANK() OVER (GROUP BY Nome,AccountID,Matricola DESC) as bar
from
table
) foo
ORDER BY
CASE WHEN @Attivita=0 THEN bar END