給定一個 salary
表,以下所示,有m=男性 和 f=女性的值 。交換全部的 f 和 m 值(例如,將全部 f 值更改成 m,反之亦然)。要求使用一個更新查詢,而且沒有中間臨時表。sql
例如:code
| id | name | sex | salary | |----|------|-----|--------| | 1 | A | m | 2500 | | 2 | B | f | 1500 | | 3 | C | m | 5500 | | 4 | D | f | 500 |
運行你所編寫的查詢語句以後,將會獲得如下表:class
| id | name | sex | salary | |----|------|-----|--------| | 1 | A | f | 2500 | | 2 | B | m | 1500 | | 3 | C | f | 5500 | | 4 | D | m | 500 |
答案:查詢
#交換工資 UPDATE salary SET sex = IF(sex="m","f","m"); UPDATE salary SET sex = (CASE WHEN sex = 'm' THEN 'f' ELSE 'm' END)