问题描述
- 一条貌似简单的Mysql问题
-
如何删除部份记录?设有一份数据表:
userid score year
1 90 1990
2 80 2000
3 70 2010
1 85 2000
2 90 2010
1 95 2010要求: 对于每个用户来说,仅保留其两条最近的记录,其余的删除,请问如何用一条sql语句搞定?
补充说明:
1. userid是用户的id
2. year是表示该记录的年份,数值越小表明该记录越旧.
3. 保留的最新记录数可能是2, 也可能是3或者更多,因此请勿用"保留一条记录"的做法。谢谢
解决方案
解决了。
多谢微wx笑。
解决方案二:
使用一条语句解决似乎有点难
解决方案三:
我觉得group by可以用limit就好了
时间: 2024-11-05 14:59:02