IFNULL(expr1,expr2)
如果 expr1 不是 NULL,IFNULL() 返回 expr1,否則它返回 expr2。
IFNULL()返回一個(gè)數(shù)字或字符串值,取決于它被使用的上下文環(huán)境。
例子:
mysql> SELECT IFNULL(1,0);
+-------------+
| IFNULL(1,0) |
+-------------+
| 1 |
+-------------+
1 row in set
由于 expr1 是 1,不為 NULL,所以函數(shù)返回 1. 我們可以再試下,如果讓 expr1 為 NULL,是否能返回第二個(gè)參數(shù)呢? 不妨讓 expr1 = 1/0, 由于除數(shù)為0,結(jié)果就為 NULL 了。
mysql> SELECT IFNULL(1/0,'NowaMagic');
+-------------------------+
| IFNULL(1/0,'NowaMagic') |
+-------------------------+
| NowaMagic |
+-------------------------+
1 row in set
說明:IFNULL只有MySQL中有,hive中并沒有此用法。