我有以下数据:
id date mia
1 1/1/2017 3
1 1/2/2017 1
1 1/3/2017 2
2 1/4/2017 1
2 1/5/2017 4
2 1/6/2017 6
.
.
.
.
等等。
如果我将输入设为id=1
,我应该获取2017-02-01
的记录,如果输入id=2
,则记录2017-05-01
,即上个月最高记录的记录。< / p>
答案 0 :(得分:2)
您可以使用:
SELECT *
FROM (SELECT *, ROW_NUMBER() OVER(PARTITION BY id ORDER BY mia DESC) AS rn
FROM table) sub
WHERE rn = 2;