Аналитическая функция Oracle для минимального значения в группировке
Я новичок в работе с аналитическими функциями.
DEPT EMP SALARY ---- ----- ------ 10 MARY 100000 10 JOHN 200000 10 SCOTT 300000 20 BOB 100000 20 BETTY 200000 30 ALAN 100000 30 TOM 200000 30 JEFF 300000
Я хочу отдел и сотрудник с минимальной зарплатой.
Результаты должны выглядеть так:
DEPT EMP SALARY ---- ----- ------ 10 MARY 100000 20 BOB 100000 30 ALAN 100000
РЕДАКТИРОВАТЬ: Вот SQL у меня есть (но, конечно, он не работает, так как он хочет, чтобы персонал в группе также по предложению):
SELECT dept, emp, MIN(salary) KEEP (DENSE_RANK FIRST ORDER BY salary) FROM mytable GROUP BY dept