Je dois prendre les N premières lignes pour chaque groupe, triées par colonne personnalisée.
Compte tenu du tableau suivant:
db=# SELECT * FROM xxx;
id | section_id | name
----+------------+------
1 | 1 | A
2 | 1 | B
3 | 1 | C
4 | 1 | D
5 | 2 | E
6 | 2 | F
7 | 3 | G
8 | 2 | H
(8 rows)
J'ai besoin des 2 premières lignes (classées par nom ) pour chaque section_id , c'est à dire un résultat similaire à:
id | section_id | name
----+------------+------
1 | 1 | A
2 | 1 | B
5 | 2 | E
6 | 2 | F
7 | 3 | G
(5 rows)
J'utilise PostgreSQL 8.3.5.