PostgreSQL выборка строк из партиций

Всем доброго дня. Имеется таблица со столбцами А и В:

А      | В
---------------
43126  | 43125
43127  | 43125
43101  | 43100
43102  | 43100
43103  | 43100

Необходимо выбрать строки (целевая выборка):

А      | В
---------------
43127  | 43125
43102  | 43100
43103  | 43100

То есть исключить из итоговой выборки только первые строки, у которых одинаковое значение в столбце В

Спасибо!


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

Автор решения: Mike

Нумеруем записи в пределах группы, отбрасываем первые номера.

select A, B
  from (
    select A, B, row_number() over(partition by B order by A) RN
      from table_x
  ) x
 where RN != 1
→ Ссылка
Автор решения: Akina

Выбираем записи, для которых существует запись с тем же b и меньшим a.

SELECT *
FROM table t1
WHERE EXISTS ( SELECT NULL
               FROM table t2
               WHERE t1.b=t2.b AND t1.a>t2.a )
→ Ссылка