2011년 8월 4일 목요일

[oracle] lag, lead, first_value, last_value

SELECT
MM
, LAG(MM) OVER (ORDER BY MM) AS PREV_MM
, LEAD(MM) OVER (ORDER BY MM) AS NEXT_MM
, FIRST_VALUE(MM) OVER (ORDER BY MM) AS FIRST_MM
, LAST_VALUE(MM) OVER (ORDER BY MM) AS LAST_MM
FROM (
    SELECT LPAD(LEVEL, 2, '0') AS MM FROM DUAL CONNECT BY LEVEL <= 12
    UNION ALL SELECT NULL FROM DUAL
    UNION ALL SELECT NULL FROM DUAL
)

댓글 없음:

댓글 쓰기