第一步:按排序取100条数据。
select id from tablename order by id desc limit 100;
第二步:删除排序字段>或者<(这个看你怎么排的)第100条该字段的记录。
delete from tablename where id<1000; //假设上面查询出来的第100条记录的id是1000。
最简单的办法,新增一个IT IDENTITY(1,1)列,==> 其会自应在当前的排序情况下生成序列数字 然后,删除原先的列。 具体的语句使用Alter Table,很简单的,Lz可自行尝试。
sql server的自增长id,在数据库中是由记录的,你需要重置才行,可以参考下面的程序
SqlServer重置自增长ID的值
1:取得上次插入的ID最大值
SCOPE_IDENTITY() --局部变量,@@IDENTITY相当于全局变量2:重置当前标识值A 如有必要,重置当前标识值
下例在必要的情况下重置 jobs 表的当前标识值。
USE pubs
GO
DBCC CHECKIDENT (jobs)
GO
B 报告当前标识值
下例报告 jobs 表中的当前标识值;如果该标识值不正确,并不对其进行更正。
USE pubs
GO
DBCC CHECKIDENT (jobs, NORESEED)
GO
C 强制当前标识值为 30
下例强制 jobs 表中的当前标识值为 30。
USE pubs
GO
DBCC CHECKIDENT (jobs, RESEED, 30)
GO
如果你只是希望显示在GridView第一列的行号是连续的,则可以不动数据库,可以添加一个模板列,放置一个Lable,行绑定时将当前行的索引+1显示出来,如果涉及分页,则配合当前PageIndex再计算一下就行。
这样不管怎么删除,行号始终是连续的
以上就是关于mysql怎么删除排序后第一百条以后的所有数据全部的内容,包括:mysql怎么删除排序后第一百条以后的所有数据、请教删除表中某些记录后,现有编号重新从1开始排序的触发器怎么写 应用实例、c# sql自动排序的ID 中途数据删除了,如何让循序不变等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)