zoukankan      html  css  js  c++  java
  • SQL条件语句(IF, CASE WHEN, IF NULL)

    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 ...


    作者:肥了个大西瓜
    链接:https://www.jianshu.com/p/d5b2f590858f
    来源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    多表代换密码
    仿射变换
    LeetCode实战练习题目
    13.线性同余方程 扩展欧几里得算法
    12.扩展欧几里得算法
    11.快速幂求逆元
    10.快速幂
    9.筛法求欧拉函数
    8.欧拉函数
    7.最大公约数 欧几里得算法,也叫辗转相除法
  • 原文地址:https://www.cnblogs.com/xiaoshen666/p/11040523.html
Copyright © 2011-2022 走看看