Използвайте аналитична функция
SELECT value
FROM (SELECT value,
dense_rank() over (order by value asc) rnk
FROM table)
WHERE rnk = 2
Аналитичните функции RANK , DENSE_RANK и ROW_NUMBER са идентични с изключение на начина, по който се справят с връзките. RANK използва процес в спортен стил на прекъсване на равенството, така че ако два реда се изравнят за ранг 1, следващият ред има ранг 3. DENSE_RANK дава на двата реда, свързани за първо място, ранг 1 и след това присвоява на следващия ред ранг 2. ROW_NUMBER произволно прекъсва равенството и дава на единия от двата реда с най-ниска стойност ранг 1, а на другия ранг 2.