제어 흐름 함수
제어 흐름 함수는 프로그램의 흐름을 제어할 때 사용합니다.
IF(수식, 참, 거짓)
수식이 참 또는 거짓인지 결과에 따라 분기 합니다.
1 |
SELECT IF(100 > 200, '참', '거짓'); |
cs |
IFNULL(수식1, 수식2)
수식1이 NULL이 아니면 수식1이 반환되고, 수식1이 NULL이면 수식2가 반환 됩니다.
만약 NULL이면 수식2를 만약 NULL이 아니면 수식1을 반환해라 라고 이해하면 쉽습니다.
1 |
SELECT IFNULL(NULL, '널입니다'); |
cs |
1 |
SELECT IFNULL(100, '널입니다'); |
cs |
NULLIF(수식1, 수식2)
수식1과 수식2가 같으면 NULL을 반환하고, 다르면 수식1을 반환됩니다.
IFNULL과 헷갈리는데, NULL이다 만약 수식1, 수식2가 같으면 으로 이해하면 편합니다.
1 |
SELECT NULLIF(100, 100); |
cs |
1 |
SELECT NULLIF(200, 100); |
cs |
CASE ~ WHEN ~ ELSE ~ END
CASE는 연산자(Operator)로 분류되며, 다중 분기에 사용될 수 있습니다.
CASE 다음에 오는 값에 해당하는 WHEN을 찾고 THEN 값이 리턴 됩니다.
모든 WHEN 문을 타고 내려오다가 해당되는 값이 없으면 ELSE 값이 리턴 됩니다.
1
2
3
4
5
6
7
8
9 |
SELECT
CASE 1000
WHEN 1 THEN '일'
WHEN 5 THEN '오'
WHEN 10 THEN '십'
WHEN 100 THEN '백'
WHEN 1000 THEN '천'
ELSE '해당안됨'
END AS 'CASE문'; |
cs |
'데이터베이스[DB]' 카테고리의 다른 글
[MySQL] MySQL 문자열 함수 [1] (0) | 2018.03.20 |
---|---|
[MySQL] MySQL Workbench CHAR() 함수 사용시 BLOB으로 보이는 문제 (0) | 2018.03.19 |
[ORACLE] 오라클 XDB 8080 포트 변경하는 방법 (0) | 2018.02.17 |
[ORACLE] 오라클 SQL Developer 다운로드 및 설치 (0) | 2018.02.15 |
[ORACLE] 오라클 11g Express 다운로드 및 설치 (0) | 2018.02.14 |