可以使用 CASE WHEN
语句来直接在 UPDATE
语句中交换 'm'
和 'f'
,如下所示:
UPDATE Salary
SET sex = CASE
WHEN sex = 'm' THEN 'f'
WHEN sex = 'f' THEN 'm'
END;
解释:
-
CASE WHEN sex = 'm' THEN 'f'
:如果sex
是'm'
,则更新为'f'
。 -
CASE WHEN sex = 'f' THEN 'm'
:如果sex
是'f'
,则更新为'm'
。 -
这样,我们在 单个
UPDATE
语句 中完成了性别的互换,并且 没有使用SELECT
语句 或 临时表。