'coalesce'에 해당되는 글 1건

  1. 2009.02.25 NVL , NVL2 , NULLIF , COALESCE, DECODE, CASE 1
ORACLE2009. 2. 25. 22:29






@ NVL(exp1, exp2)

    exp1 : NULL을 포함하는 칼럼 또는 표현식

    exp2 : NULL을 대체하는 값

 

@NVL2(exp1, exp2, exp3) 

 - exp1이 NULL이 아니면 exp2를 출력하고 exp1이 NULL이면 exp3을 출력한다.

    exp1 : NULL 을 포함하는 칼럼 또는 표현식

    exp2 : exp1이 NULL 이 아닐때 반환되는 값

    exp3 : exp1이 NULL 일때 대체되는 값

 

@NULLIF(exp1, exp2)

- exp1과 exp2의 값이 같으면 NULL을 반환하고 아니면 exp1을 반환한다.

 

@COALESCE(exp1, exp2, exp3 . ... exp(n))

- 인수중에서 NULL이 아닌 첫번째 인수를 반환.. 예를 들어 exp1 이 NULL이면

   exp2를 반환한다.

 

@DECODE(exp|COLUMN, SEARCH1, RESULT1

                                    [, SEARCH2, RESULT2 , ... ,]

                                    [ , DEFAULT] )

- exp1 또는 컬럼값이 SEARCH1 과 일치하면 RESULT1을 반환하고 SEARCH2와 일치하면

  RESULT2를 반환한다. 일치하는 값이 없거나 NULL인 경우에는 DEFAULT 를 반환한다.

  DEFAULT 가 없는 경우에는 NULL을 반환한다.

 

@CASE

- WHEN (조건) THEN (반환값)

ex)  SELECT NAME, DEPTNO, SAL,
      CASE WHEN DEPTNO=101  THEN SAL*0.1
           WHEN DEPTNO=102  THEN SAL*0.2
           WHEN DEPTNO=201  THEN SAL*0.3
           ELSE 0
           END BONUS
           FROM PROFESSOR;

Posted by 댓거리사랑