postgresql 删除重复数据案例详解


Posted in PostgreSQL onAugust 02, 2021

1.建表

/*
 Navicat Premium Data Transfer

 Source Server         : localhost
 Source Server Type    : PostgreSQL
 Source Server Version : 110012
 Source Host           : localhost:5432
 Source Catalog        : postgres
 Source Schema         : public

 Target Server Type    : PostgreSQL
 Target Server Version : 110012
 File Encoding         : 65001

 Date: 30/07/2021 10:10:04
*/


-- ----------------------------
-- Table structure for test
-- ----------------------------
DROP TABLE IF EXISTS "public"."test";
CREATE TABLE "public"."test" (
  "id" int4 NOT NULL DEFAULT NULL,
  "name" varchar(255) COLLATE "pg_catalog"."default" DEFAULT NULL,
  "age" int4 DEFAULT NULL
)
;

-- ----------------------------
-- Records of test
-- ----------------------------
INSERT INTO "public"."test" VALUES (1, 'da', 1);
INSERT INTO "public"."test" VALUES (2, 'da', 12);
INSERT INTO "public"."test" VALUES (3, 'dd', 80);
INSERT INTO "public"."test" VALUES (4, 'dd', 80);
INSERT INTO "public"."test" VALUES (5, 'd1', 13);

-- ----------------------------
-- Primary Key structure for table test
-- ----------------------------
ALTER TABLE "public"."test" ADD CONSTRAINT "test_pkey" PRIMARY KEY ("id");

2.根据名称获取重复

先看看哪些数据重复了

select name ,count(1)  from test group by name  having count(1)>1

输出.

name        count

da              2

dd              2

3.删除所有重复数据

注意把要更新的几列数据查询出来做为一个第三方表,然后筛选更新。

delete from test where name in (select t.name from (select name ,count(1)  from test group by name  having count(1)>1) t)

4.保留一行数据

这里展示我们需要保留的数据:重复数据,保留ID最大那一条

SELECT
 1. 
FROM
 test 
WHERE
 id NOT IN (
 ( SELECT min( id ) AS id FROM test GROUP BY name ) 
 )

5.删除数据

DELETE 
FROM
 test 
WHERE
 id NOT IN (
 SELECT
  t.id 
 FROM
 ( SELECT max( id ) AS id FROM test GROUP BY name ) t 
 )

到此这篇关于postgresql 删除重复数据案例详解的文章就介绍到这了,更多相关postgresql 删除重复数据内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PostgreSQL 相关文章推荐
PostgreSQL存储过程实用脚本(二):创建函数入门
Apr 05 PostgreSQL
自定义函数实现单词排序并运用于PostgreSQL(实现代码)
Apr 22 PostgreSQL
通过Qt连接OpenGauss数据库的详细教程
Jun 23 PostgreSQL
浅谈PostgreSQL表分区的三种方式
Jun 29 PostgreSQL
PostgreSQL解析URL的方法
Aug 02 PostgreSQL
postgresql 删除重复数据案例详解
Aug 02 PostgreSQL
PostgreSQL自动更新时间戳实例代码
Nov 27 PostgreSQL
基于PostgreSQL/openGauss 的分布式数据库解决方案
Dec 06 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 06 PostgreSQL
PostgreSQL 插入INSERT、删除DELETE、更新UPDATE、事务transaction
Apr 12 PostgreSQL
PostgreSQL基于pgrouting的路径规划处理方法
Apr 18 PostgreSQL
PostgreSQL常用字符串分割函数整理汇总
Jul 07 PostgreSQL
PostgreSQL解析URL的方法
Aug 02 #PostgreSQL
postgresql使用filter进行多维度聚合的解决方法
Jul 16 #PostgreSQL
浅谈PostgreSQL表分区的三种方式
通过Qt连接OpenGauss数据库的详细教程
postgres之jsonb属性的使用操作
Jun 23 #PostgreSQL
postgresql无序uuid性能测试及对数据库的影响
Jun 11 #PostgreSQL
如何使用PostgreSQL进行中文全文检索
May 27 #PostgreSQL
You might like
PHP Stream_*系列函数
2010/08/01 PHP
微信API接口大全
2015/04/15 PHP
详细解读php的命名空间(二)
2018/02/21 PHP
驱动事件的addEvent.js代码
2007/03/27 Javascript
基于jquery的商品展示放大镜
2010/08/07 Javascript
E3 tree 1.6在Firefox下显示问题的修复方法
2013/01/30 Javascript
JavaScript splice()方法详解
2020/09/22 Javascript
javascript设计模式之工厂模式示例讲解
2014/03/04 Javascript
JS获取checkbox的个数简单实例
2016/08/19 Javascript
IONIC自定义subheader的最佳解决方案
2016/09/22 Javascript
学习JavaScript图片预加载模块
2016/11/07 Javascript
JS正则替换去空格的方法
2017/03/24 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
在页面中引入js的两种方法(推荐)
2017/08/29 Javascript
JS判断数组那点事
2017/10/10 Javascript
vue+vuex+axios实现登录、注册页权限拦截
2018/03/09 Javascript
bootstrap中的导航条实例代码详解
2019/05/20 Javascript
js模拟实现烟花特效
2020/03/10 Javascript
JS实现简易留言板(节点操作)
2020/03/16 Javascript
解决vue自定义指令导致的内存泄漏问题
2020/08/04 Javascript
解决Mint-ui 框架Popup和Datetime Picker组件滚动穿透的问题
2020/11/04 Javascript
Python的多态性实例分析
2015/07/07 Python
html5应用缓存_动力节点Java学院整理
2017/07/13 HTML / CSS
清除canvas画布内容(点擦除+线擦除)
2020/08/12 HTML / CSS
大学生学习生活的自我评价
2013/11/01 职场文书
会计工作心得体会
2014/01/13 职场文书
财务总监管理岗位职责
2014/03/08 职场文书
建议书标准格式
2014/03/12 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
灰雀教学反思
2014/04/28 职场文书
计算机应用专业自荐信
2014/07/05 职场文书
医药公司采购员岗位职责
2014/09/12 职场文书
新郎父亲婚礼致辞
2015/07/27 职场文书
python 管理系统实现mysql交互的示例代码
2021/12/06 Python
聊聊redis-dump工具安装问题
2022/01/18 Redis
Spring 使用注解开发
2022/05/20 Java/Android