【发布时间】:2016-01-11 15:07:36
【问题描述】:
我有一个查询,它从几个 UNION ALL 连接的查询中返回一组结果作为名为 DATA 的表。
然后我对此进行ROW_NUMBER(),以获取特定分组的行号 (WorksOrderNo)
ROW_NUMBER() Over(partition by Data.WorksOrderNo order by Data.WorksOrderNo) as RowNo,
是否有一个等效的ROW_Count 函数,我可以在其中指定一个分区,并返回该分区的行数?
ROW_Count() Over(partition by Data.WorksOrderNo order by Data.WorksOrderNo) as RowNo ???
原因是,这是用于驱动报表布局的查询。 作为其中的一部分,我需要根据每个 WorksOrderNo 的总行数是否 >1 进行格式化。
例如,如果一个工作订单有三行,row_number 函数当前返回 1、2 和 3,其中每行的行数将返回 3。
【问题讨论】:
-
很确定 COUNT(*) 会这样做。
标签: sql sql-server tsql window-functions