627. Swap Salary
Problem Statement
Swap all 'f' and 'm' values in the sex column using a single UPDATE statement; no intermediate temp table.
Table Schema
Table: Salary
+-------------+----------+
| id | int |
| name | varchar |
| sex | enum |
| salary | int |
+-------------+----------+
id is the primary key. sex: ENUM ('m','f').
Examples
Example 1
Input Table:
Salary table:
+----+------+-----+--------+
| id | name | sex | salary |
+----+------+-----+--------+
| 1 | A | m | 2500 |
| 2 | B | f | 1500 |
| 3 | C | m | 5500 |
| 4 | D | f | 500 |
+----+------+-----+--------+
Expected Output:
+----+------+-----+--------+
| id | name | sex | salary |
+----+------+-----+--------+
| 1 | A | f | 2500 |
| 2 | B | m | 1500 |
| 3 | C | f | 5500 |
| 4 | D | m | 500 |
+----+------+-----+--------+
SQL Solution
UPDATE Salary
SET sex = CASE WHEN sex = 'm' THEN 'f' ELSE 'm' END;
Problem Info
DifficultyEASY
Topics
updatecase-when
Reference Links