假设我的表my_table
有一列ID
,另一列Date
,所有这些记录都是唯一的。
我想选择所有ID,N个日期最低的记录。如果我想为N = 1做这个,我有以下
SELECT
*
FROM my_table r
WHERE
r.Date = (SELECT Min(Date) FROM my_table WHERE ID = r.ID)
如何将此概括为更高的N?
答案 0 :(得分:2)
SQLite允许以下语法:
SELECT r.*
FROM my_table r
WHERE r.Date IN (SELECT Date FROM my_table WHERE ID = r.ID ORDER BY Date LIMIT 5);