Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Функции в plpgsql .Нужна помощь

Victoria Ell Ученик (209), закрыт 4 года назад
Как сделать функцию, которая выводит 3 наибольших числа из 5
Есть допустим числа
1 2 3 4 5
Функция должна вывести 5 4 3
Лучший ответ
Андрей Высший разум (425261) 4 года назад
Например, так (если числа формируются в коде и нужен стандартный результат запроса):

SELECT unnest FROM unnest(array[1, 2, 3, 4, 5]) ORDER BY unnest DESC LIMIT 3

Или так (если результатом должен быть массив):

subarray(sort(array[1, 2, 3, 4, 5], 'desc'), 1, 3)

Или так (если числа уже в таблице):

SELECT id FROM tbl ORDER BY id DESC LIMIT 3
Остальные ответы
Похожие вопросы