FIRST_VALUE
Возвращает значение column из первой строки рамки окна.
PostgreSQL 17.9
FIRST_VALUE(column)- column
- Столбец или выражение, значение которого нужно вернуть
Возвращаемое значение
Значение того же типа, что и column
Примеры
Самый старший в каждом статусе
PostgreSQL 17.9
SELECT member_name,
status,
birthday,
FIRST_VALUE(member_name) OVER (
PARTITION BY status
ORDER BY birthday
) AS oldest_in_status
FROM FamilyMembers;Разница с первой покупкой
PostgreSQL 17.9
SELECT family_member,
date,
unit_price,
unit_price - FIRST_VALUE(unit_price) OVER (
PARTITION BY family_member
ORDER BY date
) AS diff_from_first
FROM Payments
ORDER BY family_member,
date;Подробности
Рамка по умолчанию всегда начинается с первой строки раздела, поэтому без явной рамки функция возвращает первое значение раздела. Как задать другую рамку, описано в ROWS BETWEEN.