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
3.ifnull
IFNULL( expr1 , expr2 )
在 expr1 的值不為 NULL的情況下都返回 expr1,否則返回 expr2
select IFNULL(detailcode,'無') detailcode from ...