mysql when

阿里云服务器

在MySQL中,CASE语句用于根据条件执行不同的操作。它有两种形式:简单形式和复杂形式。简单形式的语法如下:

sql复制代码CASE expressionWHEN value1 THEN result1WHEN value2 THEN result2...ELSE result  END

这里的expression是要评估的表达式,value1value2等是可能的表达式结果,result1result2等是与每个表达式结果相关联的操作或值。如果expression的值与任何WHEN子句中的值匹配,则执行相应的THEN子句,否则执行ELSE子句中的操作或值(如果提供)。

以下是一个使用简单形式CASE语句的示例:

sql复制代码SELECT   customer_name,CASE   WHEN order_count > 10 THEN 'High'  WHEN order_count > 5 THEN 'Medium'  ELSE 'Low'  END AS order_priorityFROM   orders;

在这个示例中,根据order_count字段的值,将为每个客户分配一个订单优先级('High'、'Medium'或'Low')。

复杂形式的CASE语句允许在每个WHEN子句中使用多个条件,如下所示:

sql复制代码CASE   WHEN condition1 THEN result1WHEN condition2 THEN result2...ELSE result  END

你可以根据需要使用简单形式或复杂形式,取决于你的具体需求。