我有两个这样的 SQLite 表:
AuthorId | AuthorName
----------------------
1 | Alice
2 | Bob
3 | Carol
... | ....
BookId | AuthorId | Title
----------------------------------
1 | 1 | aaa1
2 | 1 | aaa2
3 | 1 | aaa3
4 | 2 | ddd1
5 | 2 | ddd2
... | ... | ...
19 | 3 | fff1
20 | 3 | fff2
21 | 3 | fff3
22 | 3 | fff4
我想做一个 SELECT 查询,它将返回每个 AuthorId 的前 N 行(例如两行),按标题排序(“选择每个作者的前两本书”)。
样本输出:
BookId | AuthorId | AuthorName | Title
------------------------------------------
1 | 1 | Alice | aaa1
2 | 1 | Alice | aaa1
4 | 2 | Bob | ddd1
5 | 2 | Bob | ddd2
19 | 3 | Carol | fff1
20 | 3 | Carol | fff2
如何构建此查询?
(是的,我找到了一个类似的主题,我知道如何只返回一行(第一行或顶部)。问题出在这两个上)。