postgresql 删除重复数据的几种方法小结
另外就是被使用的group by删除方法,效率较高。还有一种是刚发现的,还没有验证,现在就总结下这三种删除方法,并验证各自的执行效率。首先创建一张基础表,并插入一定量的重复数据。常规删除方法最容易想到的方法就是判断数据是否重复,对于重复的数据只保留ctid最小(或最大)的那条数据,删除其他的数据。相当于把deltest表中的数据删掉一半,耗时达到67s多。group by删除方法第二种方法为group by方法,通过分组找到ctid最小的数据,然后删除其他数据。可以看到同样是删除一半的数据,使用group by的方式,时间节省了一半。但仍含需要30s,下面试一下第三种删除操作。
用户评论