mysql-3

  1. 去重

group时取的是id最小的那一条记录

1
2
3
4
5
6
7
8
9
10
delete sprint_score
from sprint_score,
(select min(id) id, user_id, score, create_time, count(*) from sprint_score
GROUP BY user_id, score, create_time
HAVING count(*) > 1) t2
where
sprint_score.user_id = t2.user_id
and sprint_score.score = t2.score
and sprint_score.create_time = t2.create_time
and sprint_score.id > t2.id