SQL删除大量数据

时间:2014-04-03 17:40:04

标签: sql indexing sql-delete

我一直试图通过将表2中的ID与表1相关联来重写表。我想使用DELETE函数,但它会保持超时(无论出于何种原因,索引,大量数据,我知道这可以以一种相当快速和简单的方式完成,但我似乎无法让它工作。

DELETE *
FROM `TABLE 1`
WHERE EXISTS (select *
              from table2
              where t2.Client_Code = t1.Client_Code and t2.`account#` = t1.`account#`
             );

正如您所看到的,我想删除table1的客户端代码= table2的客户端代码,table1的帐户#is = to table2的帐户#等。当我尝试运行此查询时,SQLYOG变得停滞不前并且不会处理。我甚至让它尝试做几个小时但没有进展的事情。我能做些什么来实现这个目标吗?我看到管理员一直在轻松地运行这样的查询。

1 个答案:

答案 0 :(得分:0)

尝试在属性Client_Code和account#上添加t2上的索引。这可以改善对内部查询的选择。