1 if 和 ifnull
-
if 类似三元运算符,if(?=?,a,b) 为true等于a,false等于b,类似三元表达式
-
ifnull函数用于在MySQL中将NULL值替换为另外一个值
2 case 流程控制
简单case函数
枚举某个字段 或者 某个字段函数的所有值
如:
CASE country
WHEN '中国' THEN
'亚洲'
WHEN '美国' THEN
'北美洲'
WHEN '日本' THEN
'亚洲'
ELSE
'其他'
END
case搜索函数
类似if,case搜索函数可以写判断,找到第一个符合条件的case即结束
CASE
WHEN population > 80 THEN
'大'
ELSE
'小'
END
- 配合count(), sum()实现分段统计
3 not in 和 not exists
- null值代表未知的数据,比较运算符,比如=、< 或 <>,无法用来测试null值,必须使用 IS NULL 和 IS NOT NULL 操作符
- not in 子查询在有null的情况下,则均返回null