12
A
回答
17
尝试本文中描述的步骤:Removing duplicates from a PostgreSQL database。
它描述了一种情况,当你不得不处理大量的数据时,这是不可能的,以至于group by
。
简单的解决办法是这样的:
DELETE FROM foo
WHERE id NOT IN (SELECT min(id) --or max(id)
FROM foo
GROUP BY hash)
哪里hash
是一些被复制。
2
delete from table
where not id in
(select max(id) from table group by [duplicate row])
这是随机的(最大值)选择你需要保留哪一行。 如果您有聚集的东西,请提供更多详细信息
1
最快的是加入同一张表。 http://www.postgresql.org/docs/8.1/interactive/sql-delete.html
CREATE TABLE test(id INT,id2 INT);
CREATE TABLE
mapy=# INSERT INTO test VALUES(1,2);
INSERT 0 1
mapy=# INSERT INTO test VALUES(1,3);
INSERT 0 1
mapy=# INSERT INTO test VALUES(1,4);
INSERT 0 1
DELETE FROM test t1 USING test t2 WHERE t1.id=t2.id AND t1.id2<t2.id2;
DELETE 2
mapy=# SELECT * FROM test;
id | id2
----+-----
1 | 4
(1 row)
相关问题
- 1. 删除重复行
- 2. 删除重复行
- 3. 删除所有重复行记事本++
- 4. 删除重复
- 5. 删除重复
- 6. 删除“重复”
- 7. 删除重复
- 8. 删除重复
- 9. 删除重复
- 10. 删除重复
- 11. 删除重复方法不会删除重复项
- 12. 删除Python中的重复项Pandas DataFrame不删除重复项
- 13. SQL删除重复的行
- 14. R删除重复行
- 15. VBA Excel删除重复行
- 16. 删除重复的行mysql
- 17. 删除重复的行?
- 18. 删除重复行#2
- 19. JackRabbit - 删除重复行
- 20. 删除重复的行
- 21. 删除所有非重复数组php
- 22. 删除所有非重复项(球拍)
- 23. Prolog删除所有重复函数
- 24. 删除重复只有PHP
- 25. 删除重复表
- 26. F#删除重复
- 27. 删除重复项
- 28. 删除重复2000
- 29. XSLT删除重复
- 30. 删除重复值
的可能重复[如何删除与SQL重复行?(http://stackoverflow.com/questions/1173963/how-to-delete-duplicate-rows-with-sql) – 2010-09-23 11:08:40
如何具有讽刺意味!大声笑'如何删除重复的可能重复'... – 2012-02-24 21:18:20