功能:将表达式和多个可能的值进行比较,当匹配时返回相应的结果
返回类型:匹配后返回结果的类型
举例:
if(boolean condition, type ifTrue, type ifFalseOrNull)
返回类型:ifTrue表达式结果的类型
举例
- +----------------------------------------+
- | if(`tiny_column` = 1, 'true', 'false') |
- +----------------------------------------+
- | true |
- +----------------------------------------+
- 1 row in set (0.03 sec)
ifnull(type a, type isNull)
功能:测试一个表达式,如果表达式是NULL,则返回第二个参数,否则返回第一个参数。
举例
- +------------------+
- | ifnull(NULL, 10) |
- +------------------+
- | 10 |
- +------------------+
- 1 row in set (0.01 sec)
nullif(expr1,expr2)
功能:如果两个参数相等,则返回NULL。否则返回第一个参数的值。它和以下的CASE WHEN效果一样。
返回类型:expr1的类型或者NULL
- +--------------+
- | nullif(1, 1) |
- +--------------+
- | NULL |
- +--------------+
- 1 row in set (0.00 sec)