交换以下工资信息表中的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)