2009. 5. 13. 00:09
Database/MySQL
MS SQL에서 사용하는 ISNULL()은 MySQL에서 동작하지 않는다. MySQL에는 IFNULL()이라는 함수로 존재한다.
IFNULL(expr1, expr2)
expr1이 NULL이 아니면, IFNULL()은 expr1을 반환한다. 그것이 아니면(expr1이 NULL이면) expr2를 반환한다. 반환값으로 숫자, 문자열이 가능하다.
IFNULL(expr1, expr2)
expr1이 NULL이 아니면, IFNULL()은 expr1을 반환한다. 그것이 아니면(expr1이 NULL이면) expr2를 반환한다. 반환값으로 숫자, 문자열이 가능하다.
mysql> SELECT IFNULL(1,0);
-> 1
mysql> SELECT IFNULL(NULL,10);
-> 10
mysql> SELECT IFNULL(1/0,10);
-> 10
mysql> SELECT IFNULL(1/0,'yes');
-> 'yes'
-> 1
mysql> SELECT IFNULL(NULL,10);
-> 10
mysql> SELECT IFNULL(1/0,10);
-> 10
mysql> SELECT IFNULL(1/0,'yes');
-> 'yes'