sql中if,ifnull,isnull,nullif基本用法
- if
if(expr1,expr2,expr3)
expr1:条件
expr2:条件true,返回expr2
expr3:条件false,返回expr3
测试:将sex是m的变成f,是f的变成m
select id,if(sex = 'm', 'f', 'm') sex, class from stu
- ifnull
ifnull(expr1,expr2)
expr1不为空返回expr1
expr1为空返回expr2
测试:class为空,返回0
select id, sex, ifnull(class,0) class from stu
- isnull
isnull(expr1)
判断expr1是否为空,空返回1,非空返回0
测试:判断class是否为空
SELECT id, sex, ISNULL(clazz) FROM student
- nullif
nullif(expr1,expr2)
expr1等于expr2返回null
expr1不等于expr2返回expr1