【发布时间】:2014-09-07 13:35:47
【问题描述】:
假设您有一个具有不同 member_id 和服务日期的成员 您现在需要按升序排列服务日期,并在另一列 (date_count) 中返回这些日期的顺序。最终结果将如下所示:
memberid name date date_count
122 matt 2/8/12 1
122 matt 3/9/13 2
122 matt 5/2/14 3
120 luke 11/15/11 1
120 luke 12/28/14 2
100 john 1/12/10 1
100 john 3/2/12 2
100 john 5/30/12 3
150 ore 5/8/14 1
150 ore 9/9/14 2
这是有效但不返回排名 (1,2,3) 顺序的 date_count 的查询。这反而为 date_count 返回相同的数字,不知道为什么 num
memberid name date_count
122 matt 3
122 matt 3
122 matt 3
120 luke 5
120 luke 5
120 luke 5
100 john 6
100 john 6
150 ore 2
150 ore 2
SELECT A.MEMBERID, A.NAME,A.DATE, COUNT(B.DATE) AS DATE_COUNT FROM #WCV_COUNTS A
INNER JOIN #WCV_COUNTS B
ON A.MEMBERID <= B.MEMBERID
AND A.MEMBERID= B.MEMBERID
GROUP BY A.MEMBERID, A.NAME, A.DATE
ORDER BY A.MEMBERID
提前感谢您的帮助!
【问题讨论】:
标签: sql-server-2008 count inner-join cumulative-sum