增加MySql删除查询的执行时间

时间:2017-09-01 14:20:53

标签: mysql sql-delete

我需要删除表中的重复行一些值,只留下1。 我使用这个查询

HttpClientTestingModule

但我的表有大约65000行,执行时间太长,我不知道如何加快这一点。

1 个答案:

答案 0 :(得分:1)

确保将where子句中的所有字段编入索引。如果其中任何一个未编入索引运行此查询将索引它们。

ALTER TABLE cities_extended ADD INDEX `city` (`city`)

如果没有编入索引,肯定会加快查询速度。

您也可以尝试使用临时表。

drop table if exists `temp_for_duplicates`
CREATE TABLE `temp_for_duplicates` AS select * from `cities_extended` where 1 group by [field with duplicates]

truncate table `cities_extended`

INSERT INTO `cities_extended` SELECT * FROM `temp_for_duplicates`
相关问题