美文网首页数据库相关
MySQL 条件, case when 和 if 方法

MySQL 条件, case when 和 if 方法

作者: Kaidi_G | 来源:发表于2018-06-26 21:08 被阅读2次

    交换以下工资信息表中的m和f

    | id | name | sex | salary |
    |----|------|-----|--------|
    | 1  | A    | m   | 2500   |
    | 2  | B    | f   | 1500   |
    | 3  | C    | m   | 5500   |
    | 4  | D    | f   | 500    |
    

    这里主要练习一下两种条件方法,先是case when方法,
    语法是CASE expressing WHEN condition THEN return
    这里expressing 不是必须的,如果有,就是拿来和condition进行比较的,意即如果有expressing,默认将它和WHEN后面的条件进行=比较,如果真,返回THEN后面的结果。下面是有expressing和没有expressing的两种写法:

    UPDATE salary
    SET
        sex = CASE sex
                   WHEN 'm' THEN 'f'
                   WHEN 'f' then  'm'
        END;
    
    UPDATE salary
    SET
        sex = CASE 
                  WHEN sex='m' THEN 'f'
                  WHEN sex='f' then  'm'
        END;
    

    或者,我们可以用if方法

    UPDATE salary 
    SET sex = IF(sex='m','f','m');
    

    if的语法是IF(condition, value_if_true, value_if_false)

    相关文章

      网友评论

        本文标题:MySQL 条件, case when 和 if 方法

        本文链接:https://www.haomeiwen.com/subject/sztvyftx.html