ROW_NUMBER
Нумерует строки раздела окна по порядку ORDER BY, начиная с 1.
PostgreSQL 17.9
ROW_NUMBER()Возвращаемое значение
Целое число (bigint) от 1
Примеры
Нумерация строк по статусу
PostgreSQL 17.9
SELECT member_name,
status,
ROW_NUMBER() OVER (
ORDER BY status
) AS row_num
FROM FamilyMembers;Нумерация внутри каждого статуса
PostgreSQL 17.9
SELECT member_name,
status,
birthday,
ROW_NUMBER() OVER (
PARTITION BY status
ORDER BY birthday
) AS num_in_status
FROM FamilyMembers;Подробности
Строки с одинаковыми значениями ORDER BY всё равно получают разные номера в произвольном порядке. Без ORDER BY порядок нумерации не определён.