【发布时间】:2021-01-23 07:12:15
【问题描述】:
我正在尝试为每个 ID 提取每个月的最后一条记录。
下面是我请求的表格:
myTable
ID date data
1 2020-08-27 a
1 2020-08-28 b
1 2020-09-30 c
2 2020-08-29 d
2 2020-09-30 e
因此,我想得到以下信息:
output
ID date data
1 2020-08-28 b
1 2020-09-30 c
2 2020-08-29 d
2 2020-09-30 e
这里的“复杂性”是每个ID每个月的最后一条记录可能不一样。
到目前为止,我只能通过以下请求在数据库中获取每个月最后一个日期的所有可用记录:
SELECT ID, date, data
from myTable
and date in (SELECT max(date) FROM myTable GROUP BY strftime('%Y-%m', date))
这给了我这个
wrong output
ID date data
1 2020-09-30 c
2 2020-08-29 d
2 2020-09-30 e
【问题讨论】:
标签: sql sqlite subquery greatest-n-per-group window-functions