실행결과

    코드 11-23에서는 FIRST_VALUE(), LAST_VALUE() 함수와 프레임 절을 함께 사용합니다. 105번은 범위가 104, 105, 106번 로우이므로 FIRST_VALUE() 함수의 반환값은 104번의 급여인 6000, LAST_VALUE() 함수 반환값은 106번의 급여인 4800입니다. 마찬가지로 106번은 105번부터 107번까지가 범위이므로 FIRST_VALUE() 함수는 4800, LAST_VALUE() 함수는 4200을 반환했습니다.

    코드 11-24

    SELECT employee_id, emp_name, dept_name, salary,
           FIRST_VALUE(salary) OVER (PARTITION BY dept_name
                                         ORDER BY salary DESC
                                     RANGE BETWEEN 1000 PRECEDING AND 1000 FOLLOWING
                                    ) firstvalue,
           LAST_VALUE(salary) OVER (PARTITION BY dept_name
                                        ORDER BY salary DESC
                                    RANGE BETWEEN 1000 PRECEDING AND 1000 FOLLOWING
                                   ) lastvalue
      FROM emp_hierarchy
     WHERE dept_name IN ('IT', 'Finance')
     ORDER BY 3, 4 DESC;
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.