的多个行我有一个表Employee
与下面的示例数据更新同一列
ID Name Gender
1 Mary F
2 John M
3 Smith M
我想写一个更新查询,将设置性别来F
其中性别是M
并设置性别来M
,其中性别是F
。我如何在单个update
查询中做到这一点?
的多个行我有一个表Employee
与下面的示例数据更新同一列
ID Name Gender
1 Mary F
2 John M
3 Smith M
我想写一个更新查询,将设置性别来F
其中性别是M
并设置性别来M
,其中性别是F
。我如何在单个update
查询中做到这一点?
只需将使用case
:
update t
set Gender = (case when Gender = 'F' then 'M' else 'F' end)
where Gender in ('F', 'M');
使用情况何时更新
update employee set Gender=(case when Gender='F' then 'M' else 'f' end)
where gender in ('M','F')
我们可以通过使用CASE
表达更新。
查询
update Employee
set Gender = (
case Gender when 'M' then 'F'
when 'F' then 'M'
else Gender end
);