保留前n条数据

loveness 2012-03-29 02:56:44
表结构如下:
ID ClassID
1 13
2 14
3 201
4 201
5 201
6 201
7 201
8 201
9 201
.............
265 201

现在要求:每个classid只保留前50条数据,有些classid没有50条记录,
请问这个sql语句该怎么写,要求一条sql语句
...全文
70 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kaikai_kk 2012-03-29
  • 打赏
  • 举报
回复
delete from tb where id not in 
(select top 50 id from tb as t where tb.ClassId=t.ClassId order by id)
loveness 2012-03-29
  • 打赏
  • 举报
回复
现在csdn怎么也做起乱七八糟的广告了,杯具
loveness 2012-03-29
  • 打赏
  • 举报
回复
离要求很远,我所有数据都是不重复的
你这里删除本表50条以后的数据,我要求每个classID删除50条以后的数据
我看见佛 2012-03-29
  • 打赏
  • 举报
回复
delete tab1 where Id not in(select top 50 ID from tab1)
这个?还是只保留不重复的?

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧