1 CASE ... WHEN ... THEN ... SLSE END.
mysql>SELECT CASE 1 WHEN 1 THEN 'one'->WHEN 2 THEN 'two' ELSE 'more' END;-> 'one' mysql>SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END;-> 'true' mysql>SELECT CASE BINARY 'B'->WHEN 'a' THEN 1 WHEN 'b' THEN 2 END;-> NULL
2 IF(expr1, expr2, expr3)
If
expr1isTRUE(andexpr1<> 0) thenexpr1<> NULLIF()returnsexpr2;otherwise it returns
expr3.IF()returns a numeric or string value, depending on the context in which it is used.
mysql>SELECT IF(1>2,2,3);-> 3 mysql>SELECT IF(1<2,'yes','no');-> 'yes' mysql>SELECT IF(STRCMP('test','test1'),'no','yes');-> 'no'3NULLIF(expr1,expr2)Returns
NULLifis true, otherwise returnsexpr1=expr2expr1.This is the same as
CASE WHEN.expr1=expr2THEN NULL ELSEexpr1END
mysql>SELECT NULLIF(1,1);-> NULL mysql>SELECT NULLIF(1,2);-> 1
本文详细介绍了MySQL中三种常用的条件表达式:CASE WHEN THEN、IF(expr1,expr2,expr3)及NULLIF(expr1,expr2)的具体用法与应用场景,并通过实例展示了如何运用这些表达式进行数据处理。
2784

被折叠的 条评论
为什么被折叠?



