1. 题1873
if(employee_id % 2 = 1,(if(name like 'M%',0,salary)),0) AS bonus
name like 'M%'
可用 left(name,1)
2. 题627
update salary set sex = if(sex = 'm','f','m')
3. 题196
delete from Person
where Id not in (
select * from(
select min(Id)
from Person
group by Email) t)
输入:
Person 表:
+----+------------------+
| id | email |
+----+------------------+
| 1 | john@example.com |
| 2 | bob@example.com |
| 3 | john@example.com |
+----+------------------+
输出:
+----+------------------+
| id | email |
+----+------------------+
| 1 | john@example.com |
| 2 | bob@example.com |
+----+------------------+
解释: john@example.com重复两次。我们保留最小的Id = 1