mysql case满足多个条件

时间:2013-12-16 03:12:58

标签: mysql case

我想知道系统将使用哪种情况,假设满足一个条件。

 CASE 
    WHEN id IN($cID) THEN `count`+1
    WHEN id IN($prev_catID) THEN `count`-1  
 END

它会是第一个还是最后一个?

在其他编程中,每个条件都添加了BREAK以终止进程。 BREAK会在mysql中执行吗?

1 个答案:

答案 0 :(得分:2)

按顺序评估case语句。第一个匹配语句是返回的语句。

documentation

中已经清楚地描述了这一点
  

对于第二种语法,每个WHEN子句的search_condition表达式都是   评估直到一个为真,此时它对应的那个   子句statement_list执行。如果没有search_condition相等,那么   ELSE子句statement_list执行,如果有的话。