首页 > 其他 > 详细

项目4:要求交换工资表里的男女性别(难度:简单)

时间:2019-04-14 19:49:13      阅读:121      评论:0      收藏:0      [点我收藏+]

项目:交换工资表里的男女生性别(难度:简单)

创建一个 salary表,如下所示,有m=男性 和 f=女性的值 。

例如:

| id | name | sex | salary |

|----|------|-----|--------|

| 1  | A    | m   | 2500   |

| 2  | B    | f   | 1500   |

| 3  | C    | m   | 5500   |

| 4  | D    | f   | 500    |

 

-- 创建表并插入数据

-- 创建表
CREATE TABLE salary (
id int(11) NOT NULL,
name varchar(20) NOT NULL,
sex varchar(6) NOT NULL,
salary int(10) DEFAULT NULL,
PRIMARY KEY (`id`));

-- 插入数据
INSERT INTO salary VALUES (1, A, f, 2500);
INSERT INTO salary VALUES (2, B, m, 1500);
INSERT INTO salary VALUES (3, C, f, 5500);
INSERT INTO salary VALUES (4, D, m, 500);

 

-- 交换所有的 f 和 m 值(例如,将所有 f 值更改为 m,反之亦然)。要求使用一个更新查询,并且没有中间临时表。

运行你所编写的查询语句之后,将会得到以下表:

| id | name | sex | salary |

|----|------|-----|--------|

| 1  | A    | m  | 2500   |

| 2  | B    | f   | 1500   |

| 3  | C    | m   | 5500   |

| 4  | D    | f  | 500    |

 

方法1:

UPDATE salary
SET sex = if (sex = f,m,f);

SELECT * from  salary;

方法2:

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

SELECT * from  salary;

 

项目4:要求交换工资表里的男女性别(难度:简单)

原文:https://www.cnblogs.com/wodexk/p/10706581.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!