Аналитическая функция 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

Ответы на вопрос(4)

Ваш ответ на вопрос