Het klinkt alsof je de rij wilt selecteren met de hoogste high_val
voor elke categorie. Zo ja, dan kunt u row_number()
. gebruiken om elke rij binnen een categorie te rangschikken volgens zijn high_val
waarde, en selecteer alleen de hoogst gerangschikte rijen, d.w.z. rn = 1
:
select * from (
select row_number() over (partition by category order by high_val desc, date asc) rn, *
from mytable
where something = 'avalue'
) t1 where rn = 1