제어 흐름 함수
| 구분 | 설명 |
|---|
| IF(수식, 참, 거짓) | 진리값에 따른 값이 반환 |
| IFNULL(수식1,수식2) | 식1이 NULL이면 수식2를 반환하고, 그렇지 않으면 수식1을 리턴 |
| NULLIF(수식1, 수식2) | 수식1과 수식2가 같다면 NULL을, 아니면 수식1을 반환 |
| CASE ~ WHEN ~ ELSE~ END | 다중 분기에 사용 |
SELECT empno, ename, if(sal>2000, 'high','low')
FROM emp;
SELECT empno, ename, IFNULL(comm,'nan')
FROM emp;
SELECT empno, deptno, nullif(deptno, 10)
FROM emp;
SELECT ename,deptno,
case deptno
when 10 then 'acc'
when 20 then 'res'
when 30 then 'sales'
END AS dname
FROM emp;
SELECT ename,sal,
case
when sal >= 3000 then 'high'
when sal >= 2000 then 'middle'
when sal < 2000 then 'low'
END AS grade
FROM emp;