创建一个 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;