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表分区的三种方式
Jun 29 PostgreSQL
postgresql使用filter进行多维度聚合的解决方法
Jul 16 PostgreSQL
postgresql 删除重复数据案例详解
Aug 02 PostgreSQL
PostgreSQL自动更新时间戳实例代码
Nov 27 PostgreSQL
Rust 连接 PostgreSQL 数据库的详细过程
Jan 22 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 06 PostgreSQL
PostgreSQL数据库创建并使用视图以及子查询
Apr 11 PostgreSQL
PostgreSQL数据库去除重复数据和运算符的基本查询操作
Apr 12 PostgreSQL
postgreSQL数据库基础知识介绍
Apr 12 PostgreSQL
PostgreSQL基于pgrouting的路径规划处理方法
Apr 18 PostgreSQL
PostgreSQL之连接失败的问题及解决
May 08 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 高级课程笔记 面向对象
2009/06/21 PHP
PHP新手NOTICE错误常见解决方法
2011/12/07 PHP
PHP处理Oracle的CLOB实例
2014/11/03 PHP
CodeIgniter配置之config.php用法实例分析
2016/01/19 PHP
php生成mysql的数据字典
2016/07/07 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
jQuery Ajax 实例全解析
2011/04/20 Javascript
中国地区三级联动下拉菜单效果分析
2012/11/15 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
jquery Validation表单验证使用详解
2020/09/12 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
2016/05/25 Javascript
JavaScript随机打乱数组顺序之随机洗牌算法
2016/08/02 Javascript
AngularJS 应用身份认证的技巧总结
2016/11/07 Javascript
JavaScript实现的CRC32函数示例
2016/11/23 Javascript
jQuery实用密码强度检测
2017/03/02 Javascript
JS仿QQ好友列表展开、收缩功能(第一篇)
2017/07/07 Javascript
JavaScript插入排序算法原理与实现方法示例
2018/08/06 Javascript
一些手写JavaScript常用的函数汇总
2019/04/16 Javascript
vue实现导航标题栏随页面滚动渐隐渐显效果
2020/03/12 Javascript
在centos7中分布式部署pyspider
2017/05/03 Python
使用sklearn进行对数据标准化、归一化以及将数据还原的方法
2018/07/11 Python
tensorflow 用矩阵运算替换for循环 用tf.tile而不写for的方法
2018/07/27 Python
Appium Python自动化测试之环境搭建的步骤
2019/01/23 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
利用Python模拟登录pastebin.com的实现方法
2019/07/12 Python
Python实现链表反转的方法分析【迭代法与递归法】
2020/02/22 Python
在python中使用nohup命令说明
2020/04/16 Python
Tensorflow tensor 数学运算和逻辑运算方式
2020/06/30 Python
Python的控制结构之For、While、If循环问题
2020/06/30 Python
纯CSS3实现鼠标滑过按钮动画第二节
2020/07/16 HTML / CSS
讲文明树新风演讲稿
2014/05/12 职场文书
中学清明节活动总结
2014/07/04 职场文书
2015年119消防宣传日活动总结
2015/03/24 职场文书
联谊会开场白
2015/06/01 职场文书
六年级作文之自救
2019/12/19 职场文书
pytorch查看网络参数显存占用量等操作
2021/05/12 Python