У меня есть два SQLite таблицы, как это:Как выбрать первые N строк каждой группы?
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
Я хочу, чтобы сделать запрос на выборку, которая будет возвращать первый N (например, два) строки для каждого AuthorID, заказав по заголовкам ("Выберите первые две книги каждый автор "). Выход
Пример:
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
Как я могу построить этот запрос?
(Да, я нашел аналогичную тему, и я знаю, как возвращать только одну строку (первую или верхнюю). Проблема в том, что эти два).
Кто-то была аналогичная проблема здесь http://stackoverflow.com/questions/9518900/how-to-find-teams-with-sql-command –
Пожалуйста, смотрите [ "Должны ли вопросы включают„метки“в их названия? »] (http://meta.stackexchange.com/questions/19190/should-questions-include-tags-in-their-titles), где консенсус« нет, они не должны »! –