sql语句if,case when

Posted 孟夏草木长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql语句if,case when相关的知识,希望对你有一定的参考价值。

1.if

表达式:IF( expr1 , expr2 , expr3 )

expr1条件,条件为true,则值是expr2 ,false,值就是expr3 

例:

SELECT 
o.id,u.account,catagory.`name`,orderTime,detail.amount,periodtime,if(direction=0,看涨,看跌) directionName
FROM t_order_detail detail
LEFT JOIN t_order o ON o.id = detail.orderId
LEFT JOIN t_catagory catagory ON catagory.id = o.catId
LEFT JOIN t_user u ON u.id = o.userId

2.case when

case 列名

when 条件 then 结果

else 其它结果

end 别名

例:

SELECT 
CASE detail.`status` WHEN 0 THEN 未开仓
WHEN 1 THEN 已开仓
WHEN 2 THEN 已平仓
ELSE 取消订单 END
status,
CASE o.type WHEN 0 THEN 单期
WHEN 1 THEN 多期
ELSE 策略 END 
typeName
FROM t_order_detail detail
LEFT JOIN t_order o ON o.id = detail.orderId

 

以上是关于sql语句if,case when的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server判断语句(IF ELSE/CASE WHEN )

SQL中的条件判断语句(case when zhen if,ifnull)用法

sql 的case when 语句

SQL Server判断语句(IF ELSE/CASE WHEN )

SQL语句中case,when,then的用法

sql2005中的case when语句怎么用啊?请写出一个常见的例子