我试着写下以下内容,以获得不同的灵感,如下所示:
numuers=COUNT(不同的[UserAccountKey])超过(按[Mth]分区)
管理工作室似乎对此不太满意。当我删除DISTINCT
关键字时,该错误消失,但随后它将不是一个DISTINCT计数
DISTINCT
在分区函数中似乎不可能。
我如何找到不同的计数?我是否使用更传统的方法,如相关子查询
再进一步研究一下,这些OVER
函数的工作方式可能与Oracle不同,因为它们不能在SQL Server
中用于计算运行总数
我在SQLfiddle上添加了一个实例,尝试使用一个分区函数来计算运行总数
有一个非常简单的解决方案,使用densite\u rank()
densite\u rank()覆盖(按[UserAccountKey]按[Mth]顺序划分)
+(按[UserAccountKey]desc按[Mth]顺序划分)
- 1
这将为您提供确切的要求:每个月内不同的UserAccountKey的数量