일련번호중 비어 있는 값 찾아내기

시퀀스나 최대값으로 일련번호를 매기는 경우 중간에 값이 비는 경우가 있다.
중간에 비어 있는 값을 찾아내는 방법
WITH t AS (
	SELECT 1 no, 'A' nm FROM dual
	UNION ALL
	SELECT 2, 'B' FROM dual
	UNION ALL 
	SELECT 3, 'C' FROM dual
	UNION ALL 
	SELECT 5, 'E' FROM dual
)
SELECT nvl(no + 1, 0)
FROM (
  SELECT no, lead(no,1,0) OVER(ORDER BY no) no_next --다음 행을 가져온다.
  FROM t
)
WHERE no_next - no <> 1
AND rownum = 1 

- http://www.oracleclub.com/article/25103
=-=> ^= 는 ...?