Bootstrap

mysql + Oracle

eg627. 变更性别

Salary 表:

+-------------+----------+
| Column Name | Type     |
+-------------+----------+
| id          | int      |
| name        | varchar  |
| sex         | ENUM     |
| salary      | int      |
+-------------+----------+
id 是这个表的主键(具有唯一值的列)。
sex 这一列的值是 ENUM 类型,只能从 ('m', 'f') 中取。
本表包含公司雇员的信息。

请你编写一个解决方案来交换所有的 'f' 和 'm' (即,将所有 'f' 变为 'm' ,反之亦然),仅使用 单个 update 语句 ,且不产生中间临时表。

注意,你必须仅使用一条 update 语句,且 不能 使用 select 语句。

update 修改语句的关键字

decode()

  1. decode(条件,值1,值2,值3……)

当decode条件,值1满足时,就输出值1,值2满足时,就输出值2,。。。。以此类推,

/* Write your PL/SQL query statement below */
update Salary set sex = decode(sex,'f','m','f')

;