카테고리:

조건식 함수

COALESCE

인자 중 첫 번째 NULL이 아닌 식을 반환하거나, 모든 인자가 NULL이면 NULL을 반환합니다.

구문

COALESCE( <expr1> , <expr2> [ , ... , <exprN> ] )
Copy

사용법 노트

  • 가능하면 같은 유형의 인자를 전달하십시오. 다른 유형의 인자는 전달하지 않도록 하십시오.

  • 인자 중 하나가 숫자인 경우 이 함수는 숫자가 아닌 문자열 인자(예: 'a string')와 상수가 아닌 문자열 인자를 NUMBER(18,5) 형식으로 강제 변환 합니다.

    상수가 아닌 숫자형 문자열 인자의 경우 NUMBER(18,5)가 숫자 값을 나타내기에 충분하지 않은 경우 해당 값을 나타낼 수 있는 형식으로 인자를 캐스팅 해야 합니다.

데이터 정렬 세부 정보

  • The collation specifications of all input arguments must be compatible.

  • The comparisons follow the collation based on the input arguments〉 collations and precedences.

  • The collation of the result of the function is the highest-precedence collation of the inputs.

SELECT column1, column2, column3, coalesce(column1, column2, column3)
FROM (values
  (1,    2,    3   ),
  (null, 2,    3   ),
  (null, null, 3   ),
  (null, null, null),
  (1,    null, 3   ),
  (1,    null, null),
  (1,    2,    null)
) v;

+---------+---------+---------+-------------------------------------+
| COLUMN1 | COLUMN2 | COLUMN3 | COALESCE(COLUMN1, COLUMN2, COLUMN3) |
|---------+---------+---------+-------------------------------------|
|       1 |       2 |       3 |                                   1 |
|    NULL |       2 |       3 |                                   2 |
|    NULL |    NULL |       3 |                                   3 |
|    NULL |    NULL |    NULL |                                NULL |
|       1 |    NULL |       3 |                                   1 |
|       1 |    NULL |    NULL |                                   1 |
|       1 |       2 |    NULL |                                   1 |
+---------+---------+---------+-------------------------------------+
Copy