2013-10-01 3 views
2

Я использую следующий запрос pgsql, чтобы выбрать index_id и сделать отдельный запрос в столбце уровня.Postgres SELECT DISTINCT, только самые высокие значения

SELECT DISTINCT ON (level) index_id FROM indexes 

Хотя его работа, он возвращает первый index_id для каждого уровня, я хотел бы получить высокий index_id в каждом отчетливом уровни

ответ

4

Используйте order by, чтобы получить максимальное index_id

SELECT DISTINCT ON (level) index_id 
FROM indexes 
order by level, index_id desc 
2

Попробуйте использовать GROUP BY вместо DISTINCT ON

SELECT MAX(index_id) FROM indexes GROUP BY level 
Смежные вопросы