mysql - 高效删除重复行

标签 mysql sql

我有一个包含 2800 万条记录的表,但现在它有 5600 万条记录,因为我假设 load local infile 命令会忽略表中已有的行。不,我需要一种有效删除重复行的方法。解决这个问题的最佳方法是什么?

如果我不想触摸我的表格,我可以通过以下语句选择唯一的行:

select distinct (l1.lat, l2.lon) from A, B;

最佳答案

将原件选择到新/临时表中,删除 5600 万条记录,插入您的原件。

例子: 插入 new_fresh_table 从 table_with_dupes 中选择 a、b、c、d 按 a、b、c、d 分组

如果您以某种方式丢失了被骗的 ID(不确定 PK 如何实现),您需要在每一列上使用 GROUP BY。针对元数据编写 SELECT 为您编写 SELECT

关于mysql - 高效删除重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10920025/

相关文章:

mysql - 服务器上的 "mysqladmin flush-hosts"怎么办?

对于 MySQL DateTime,C# 输入字符串的格式不正确

MySQL 订单表中订单商品的汇总价格

sql - 为什么 Tableau 数据源和工作表显示不同的数据?

sql - 在一次有效查询中选择过去 30 天和过去 7 天注册的用户

mysql - SQLQuery 列被 1's instead of 0' 填充

mysql - Laravel5.1 查询和子查询

sql - 不使用更新语句更新表

php - 在 SQL 字段中有一个数组。如何系统地展示它?

SQL。检查2个列表是否相交