mysql函数(五.流程控制函数)

流程控制函数

  1.IF(expr1,expr2,expr3) 判断条件的正误,返回对应值

    (1)判断条件的正返回expr2,否则返回expr3

      select IF(10>5,'大于','小于') as result;      结果:大于

 

  2.IFNULL(expr1,expr2) 判断值是否为空

    (1)判断值为空返回expr2,否则返回expr1

      select IFNULL(go.amount,0) from t_goods go;

 

  3.case使用方法一(类似于switch,判断值等于)

     CASE 要判断的字段或者表达式

     WHEN 常量1 THEN 要显示的值1或者语句1

     WHEN 常量2 THEN 要显示的值2或者语句2

      ...

     ELSE 要显示的值n或者语句n  

     END AS 别名

 

    case使用方法二(类似于多重if,判断区间,例如>,<,>=之类的)

     CASE

     WHEN 条件1 THEN 要显示的值1或者语句1

     WHEN 条件2 THEN 要显示的值2或者语句2

      ...

     ELSE 要显示的值n或者语句n  

     END AS 别名

 

    (1)判断性别::判断值等于

      CASE sex

              WHEN 0 THEN ''

        WHEN 1 THEN ''

        WHEN 2 THEN '不男不女'

        ELSE '太监'

      END AS 性别

 

    (2)判断成绩::判断区间

      CASE

              WHEN score>=80 THEN '优秀'

              WHEN score between 60 and 79 THEN '及格'

              WHEN score<60 THEN '不及格'

      END AS 等级

posted @ 2019-07-04 19:40  暖瞳123  阅读(347)  评论(0编辑  收藏  举报