PostgreSQL. Выборка элементов с N'ым количеством subject_id

Есть например такая таблица

Исходная таблица

Из нее мне нужно получить такую

введите сюда описание изображения

Т.е. нужно чтобы записи с subject_id повторялись только нужное количество раз, например, по 2 записи.

Как можно сделать подобный запрос?


Ответы (1 шт):

Автор решения: Akina
WITH cte AS ( SELECT *, 
                     ROW_NUMBER() OVER (PARTITION BY subject_id ORDER BY id) rn
              FROM src_table )
SELECT *
FROM cte
WHERE rn < 3
→ Ссылка