案例:mysql之交换工资

本文介绍了一种在不使用中间临时表的情况下,通过SQL更新查询实现性别字段(m和f)批量翻转的方法。具体操作是在salary表中,利用CASE WHEN语句将所有f值更改为m,同时将所有m值更改为f,实现了数据的高效处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

use runoob;
create table if not exists salary(
id int(11) auto_increment,
name varchar(11) not null,
sex varchar(11) not null,
sala float default null,primary key(id)
)engine=innodb;
insert into salary(name,sex,sala)
values('A','m','2500'),
		('B','f','1500'),
   	('C','m','5500'),
   	('D','f','500');

结果为
在这里插入图片描述
交换所有的 f 和 m 值(例如,将所有 f 值更改为 m,反之亦然)。要求使用一个更新查询,并且没有中间临时表。

update salary
set sex=
	case sex
	when 'm'
	then 'f'
	else 'm'
end;

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值