SELECT *
FROM (
SELECT some_column,
row_number() over (order by your_sort_column desc) as row_num
FROM some_table
) t
WHERE row_num = 3
Jeśli oczekujesz, że więcej niż jeden wiersz będzie miał taką samą wartość w your_sort_column możesz również użyć funkcji rank()
SELECT *
FROM (
SELECT some_column,
rank() over (order by your_sort_column desc) as row_rank
FROM some_table
) t
WHERE row_rank = 3
To może zwrócić więcej niż jeden wiersz..