将单行中的字段与整列中的字段进行比较



我有一列日期,我想有第二列来计算第一列中日期在整个列中出现的总次数。 我正在尝试使用 Count(IIf(...((,但我不知道如何指定 SSRS 使用当前行作为标准,然后检查整列的计数。

Dates     Records
9/14/18   2
9/14/18   2
9/15/18   1
9/16/18   3
9/16/18   3
9/16/18   3

假设您没有使用非常旧版本的SQL Server,那么您可以做一些简单的事情,例如

SELECT 
* 
, COUNT(*) OVER(PARTITION BY PartTran_TranDate) AS DateCount
FROM myTable

也许这会有所帮助。为了简单起见,我对其进行了一点更改:

DECLARE @Table TABLE (DateCol DATE)
INSERT @Table
VALUES ('9/14/18'),
('9/14/18'),
('9/15/18'),
('9/16/18'),
('9/16/18'),
('9/16/18')

SELECT t.DateCol, r.rn
FROM @Table t
OUTER APPLY (SELECT COUNT(DateCol) rn
FROM @Table t2
WHERE t2.DateCol = t.DateCol
GROUP BY t2.DateCol) r

最新更新