Sql server 删除sql server表中的数据需要很多时间
我有一张有超过3.8亿条记录的表格。我有一个存储过程,它:Sql server 删除sql server表中的数据需要很多时间,sql-server,performance,Sql Server,Performance,我有一张有超过3.8亿条记录的表格。我有一个存储过程,它: 删除一些记录 插入一些东西 整个过程大约需要30分钟来执行。其中,删除需要28分钟 Delete是一个简单的语句,大致如下: Delete a where condition_1 AND condition_2 AND condition_3 有人能帮我吗?为条件中的字段编制索引可能会有所帮助。如果创建要删除的行的视图,需要多长时间?如果可以加快查看速度,则可以加快删除速度。条件是否太大? 也许使用索引可以帮助更快地删除 或者,您可以
删除
需要28分钟
Delete是一个简单的语句,大致如下:
Delete a where condition_1 AND condition_2 AND condition_3
有人能帮我吗?为条件中的字段编制索引可能会有所帮助。如果创建要删除的行的视图,需要多长时间?如果可以加快查看速度,则可以加快删除速度。条件是否太大? 也许使用索引可以帮助更快地删除 或者,您可以使用truncate而不是delete
CREATE [UNIQUE] INDEX indexName
ON table
(fieldName [ASC/DESC], ...)
ASC/DESC选项可以定义订单您的表格是如何组织的?您有哪些聚集索引和哪些非聚集索引?这三个条件究竟是什么
DELETE的行为很像SELECT,因为它需要找到符合删除条件的行。为此,它将使用与SELECT相同的技术,如果您的条件_1、条件_2和条件_3没有覆盖索引,它们将触发一个表扫描,该扫描将按数据大小(380M)计时。首先查看您的和查询。。首先,它应该不会占用
28分钟的时间
也许值得一看,也许你也可以尝试以增量方式删除记录。有什么建议吗?表上有任何删除触发器吗?条件不是更大…只是比较EX:c_number='01102'。我不能截断…因为我没有删除此N表中的全部数据。嗨,用词不当,你能告诉我这种离子增量方法与一次性方法相比有多有用吗?…请参阅我的帖子: