Problem solving/DataBase

[LeetCode] 627. Swap Salary (Oracle)

Young_A 2021. 1. 9. 14:10

LeetCode - Problems - Database - 627. Swap Salary

더보기

Given SQL Schema

create table if not exists salary(id int, name varchar(100), sex char(1), salary int)
Truncate table salary
insert into salary (id, name, sex, salary) values ('1', 'A', 'm', '2500')
insert into salary (id, name, sex, salary) values ('2', 'B', 'f', '1500')
insert into salary (id, name, sex, salary) values ('3', 'C', 'm', '5500')
insert into salary (id, name, sex, salary) values ('4', 'D', 'f', '500')

Problem Description

Given a table salary, such as the one below, that has m = male and f = female values. Swap all f and m values (i.e., change all f values to m and vice versa) with a single update statement and no intermediate temp table.

Note that you must write a single update statement, DO NOT write any select statement for this problem.

 

Example:

 

My Solution (Oracle)

UPDATE salary
    SET sex =
        CASE
            WHEN sex = 'f' THEN 'm'
            ELSE 'f'
        END;