postgresql 删除重复数据案例详解
更新时间:2021年08月02日 09:52:31 作者:小兜全糖(Cx)
这篇文章主要介绍了postgresql 删除重复数据案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
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.conf,pg_hba.conf,pg_ident.conf
这篇文章主要为大家介绍了postgresql数据库中三个重要的配置文件postgresql.conf,pg_hba.conf,pg_ident.conf使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-02-02
Centos环境下Postgresql 安装配置及环境变量配置技巧
本文给大家分享在Centos环境下Postgresql 安装配置及环境变量配置技巧,给大家带来了详细的安装步骤,对Postgresql 安装配置相关知识感兴趣的朋友跟随小编一起学习吧2021-05-05


最新评论