我有一个包含以下条目的表格,并且在涉及日期时我正在努力分组。
id ref startDate
---- ----- -------------
1 001 01-01-2013
2 001 03-02-2013
3 002 31-01-2013
4 002 15-01-2013
5 001 05-06-2013 ....
我想要做的是为每个参考选择前 2 个最大日期,所以我得到以下信息。
id ref startDate
---- ----- -------------
5 001 05-06-2013
2 001 03-02-2013
3 002 31-01-2013
4 002 15-01-2013
我认为这意味着沿着..
SELECT *
FROM TABLE a
JOIN (SELECT startDate
FROM TABLE b
JOIN TABLE c
ON b.ref = c.ref AND b.startDate >= c.startDate
GROUP BY ref) AS d
ON a.ref = b.ref
我使用的是 SQL 2000,所以很遗憾分区是不可能的。