[英]Better SQL query In SQL Server for best performance
我有两个表(具有相同的结构)。 一个拥有8000万记录,另一个拥有6000万记录。 我想删除80m表中与60m表匹配的记录。 我使用如下的sql查询:
DELETE FROM tbl_80M
FROM tbl_80M INNER JOIN
tbl_60M ON tbl_80M.MobileNumber = tbl_60M.MobileNumber
在两个表中,我们在mobilenumber字段上具有索引。 我在查询上面运行,这需要很长时间。 有没有更好的方法可以在更短的时间内达到结果?
注意:tbl_80M具有tbl_60M中的所有记录。 我想查找和删除所有在tbl_80M和tbl_60M中通用的记录。
您是否尝试编写查询以将这些N百万条记录插入到新表中,然后删除旧表。
然后最后可以将新表重命名为tbl_80M。
SELECT
* INTO tbl_NM
FROM tbl_80m a,
tbl_60m b
WHERE tbl_80M.MobileNumber = tbl_60M.MobileNumber
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.