数据库

数据库如何删除重复数据

小亿
146
2023-08-04 15:52:08
栏目: 大数据
亿速云数据库,弹性扩容,低至0.3元/天! 查看>>

要删除重复数据,可以使用以下方法之一:

  1. 使用DISTINCT关键字获取不重复的数据,并将其插入到新的表中,然后删除原始表,最后将新表重命名为原始表的名称。
CREATE TABLE new_table AS
SELECT DISTINCT * FROM original_table;
DROP TABLE original_table;
ALTER TABLE new_table RENAME TO original_table;
  1. 使用ROW_NUMBER()函数和CTE(通用表达式)来标记重复行,然后删除标记不为1的行。
WITH cte AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY column1, column2, ... ORDER BY column1) AS rn
FROM original_table
)
DELETE FROM cte WHERE rn > 1;
  1. 使用INNER JOIN语句将重复的行与自身进行连接,然后删除重复的行。
DELETE FROM original_table
WHERE (column1, column2, ...) IN (
SELECT column1, column2, ...
FROM original_table
GROUP BY column1, column2, ...
HAVING COUNT(*) > 1
);

以上方法需要根据具体的数据库系统和表结构进行调整。在执行删除操作之前,建议先备份数据以防止意外情况的发生。

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

相关推荐:数据库如何删除重复数据保留一条

0
看了该问题的人还看了