[点晴永久免费OA]SQL Server之delete top删除超大海量数据报错解决方案
当前位置:点晴教程→点晴OA办公管理信息系统
→『 经验分享&问题答疑 』
以下示例删除 Testdb 表中所有行的 10%: --删除测试数据
--以下示例删除 Testdb 表中所有行的 10%。 delete TOP (10) PERCENT from Testdelete GO --下面这句执行错误 ----delete TOP (10) PERCENT from Testdelete order by PKID desc ----GO 当遇到超大数据时(百万、千万以上),可能会发现delete失去响应,无法删除任何数据,可以用以下方法轻松对超大海量数据进行制定删除:
delete from mis_action_log where id in (select top 100000 id from mis_action_log where input_time<'2022-1-1' order by id asc)
如果不需要排序,那么以下方法也是可以的:
delete top (10000) from mis_action_log where input_time<'2022-1-1'
此方法为SQL Server 2005以上版本才支持,而且不支持后面带排序效果,并且要删除的数量10000前后都必须有括号。
该文章在 2024/1/23 17:33:09 编辑过 |
关键字查询
相关文章
正在查询... |