MySQL:IF()函数根据指定条件返回不同的值
语法如下:
IF(condition, value_if_true, value_if_false)
其中,condition表示要判断的条件,如果条件成立,则返回value_if_true;如果条件不成立,则返回value_if_false。
案例
SELECT IF(3 > 2, 'True', 'False') AS result1; -- 结果将是'True'
SELECT IF(3 < 2, 'True', 'False') AS result2; -- 结果将是'False'
业务需求,有一个枚举类需要判断 true返回1 false返回0
if(C.action='confirmed',1,0)
select S.user_id, round(avg(if(C.action='confirmed',1,0)), 2) confirmation_rate
from Signups S left join
Confirmations C on S.user_id=C.user_id group by S.user_id