MYSQL去重方法汇总

article/2025/9/18 20:10:48

表数据

在这里插入图片描述

备注:

  • id: 任务id;
  • name: 参与人name;

1:distinct

1.1

-- 根据任务ID去重
SELECT DISTINCT id FROM test;

在这里插入图片描述

1.2

-- 任务总数
SELECT COUNT(DISTINCT id) FROM test;

在这里插入图片描述

1.3

distinct 通常效率较低。它不适合用来展示去重后具体的值,一般与 count 配合用来计算条数
distinct 使用中,放在 select 后边,对后面所有的字段的值统一进行去重。比如distinct后面有两个字段,那么 11,11 和 11, 21 这两条记录不是重复值

SELECT DISTINCT id, name FROM test;

在这里插入图片描述

2: group by

2.1

SELECT id, name, count(*) FROM test
GROUP BY id;

在这里插入图片描述

-- 任务总数
SELECTcount( tmp.id ) 
FROM( SELECT id, NAME FROM test GROUP BY id ) tmp

在这里插入图片描述

3:row_number

row_number 是窗口函数,语法如下:
row_number() over (partition by <用于分组的字段名> order by <用于组内排序的字段名>) 其中partition by 部分可省略

SELECT id,name,ROW_NUMBER() over (ORDER BY id) rn
FROM test

在这里插入图片描述

SELECT id,name,ROW_NUMBER() over (PARTITION by id ORDER BY id) rn
FROM test

在这里插入图片描述

SELECTCOUNT( CASE WHEN rn = 1 THEN id ELSE NULL END ) count 
FROM( SELECT id, NAME, ROW_NUMBER() over ( PARTITION BY id ORDER BY id ) rn FROM test ) tmp

在这里插入图片描述


http://chatgpt.dhexx.cn/article/sEGFn1yM.shtml

相关文章

mysql 怎么去重2维数组,mysql去重查询

在使用MySQL时&#xff0c;有时需要查询出某个字段不重复的记录&#xff0c;这时可以使用mysql提供的distinct这个关键字来过滤重复的记录&#xff0c;但是实际中我们往往用distinct来返回不重复字段的条数(count(distinct id)),其原因是distinct只能返回他的目标字段&#xff…

MySQL去重查询只保留一条最新的记录

需求&#xff1a;MySQL去重查询只保留一条最新的记录 文章目录 易错的写法正确的写法-1正确的写法-2正确的写法-3 易错的写法 表结构与初始数据如下SQL文件&#xff1a; -- MySQL dump 10.13 Distrib 8.0.28, for Linux (x86_64) -- -- Host: localhost Database: test01…

MySQL去重查询

在使用MySQL时&#xff0c;有时需要查询出某个字段不重复的记录&#xff0c;这时可以使用mysql提供的distinct这个关键字来过滤重复的记录&#xff0c; 实例&#xff1a; select distinct name,id from user;&#xff0c;这样的结果为&#xff1a; distinct name,id 这样的my…

mysql去重查询的三种方法

文章目录 前言一、插入测试数据二、剔除重复数据方法1.方法一&#xff1a;使用distinct2.方法二&#xff1a;使用group by3.方法三&#xff1a;使用开窗函数 总结 前言 数据库生成环境中经常会遇到表中有重复的数据&#xff0c;或者进行关联过程中产生重复数据&#xff0c;下面…

易基因|RNA m7G甲基化测序(m7G-MeRIP-seq)

N7-甲基鸟苷&#xff08;N7-methylguanosine&#xff0c;m7G&#xff09;是真核生物tRNA、rRNA和mRNA 5cap中最丰富的修饰之一。作为一种重要的表观遗传修饰&#xff0c;m7G RNA甲基化在基因表达、加工代谢、蛋白质合成、转录稳定等方面发挥着重要的作用&#xff0c;参与疾病发…

GeneXus学习(二)基本对象(持续更新)

GeneXus对象很多&#xff0c;笔者持续更新每个对象的用法 一、Transaction GeneXus中的Transaction是用于描述对象的模型。 英文描述&#xff1a; Describes an object or actor of reality, defining the structure of the database, business rules, and the UI for data…

sgRNAs基因编辑

CRISPR-Cas9知识学习笔记 https://www.163.com/dy/article/FGCP58KC0532AN5N.html https://crispr.dbcls.jp CRISPR&#xff08;clustered regularly interspaced short palindromic repeats&#xff0c;成簇的规律间隔短回文重复序列&#xff09;和CRISPR-associated protein …

敏捷开发与GeneXus哲学

译者前言 在GeneXus的重要创始人和核心成员的观念里&#xff0c;在做一件重大事情前往往需要进行大量的思考&#xff0c;尤其是所要从事事业背后的本质及相关的哲学问题进行思考&#xff0c;然后要研究对应的方法论。在上述问题得到明确的答案后&#xff0c;才开始开展工作。 …

【Reactome 下载所有通路基因集】

Reactome 下载所有通路基因集 Reactome 下载所有通路基因集Reactome 介绍ReactomePA官网下载处理 Reactome 下载所有通路基因集 目前&#xff0c;网上有许多下载 KEGG、GO 数据库中所有富集通路的基因集方法&#xff0c;但是相对于 Reactome 来说却几乎没有。所以&#xff0c;…

易基因|一种全新的检测DNA羟甲基化的技术:ACE-Seq

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑做组学科研服务的易基因。今天给大家介绍一种全新的检测DNA羟甲基化的技术&#xff1a;APOBEC-coupled epigenetic sequencing&#xff0c;简称【ACE-seq】。 前言 DNA序列中胞嘧啶&#xff08;C&#xff09;5’ 碳…

已知基因名,如何在genbank中查询基因序列?

以人类YBX1为例&#xff0c;首先进入NIH官网&#xff0c;如下图&#xff0c;database选择gene&#xff0c;在输入框中输入自己需要找的基因名&#xff0c;点击搜索。 搜索后在下方search result中会显示很多结果&#xff0c;分别是不同物种的。点击人类的YBX1进入详情页面。 进…

基因组学(Geonomics)

什么是基因组学? 基因组学(Geonomics)是一门研究基因组(Genome)的科学。 什么是基因组&#xff1f; 我们每个人都是由上万亿个细胞构成的&#xff0c;每个细胞中都包含一套完整的生命密码&#xff0c;也就是DNA&#xff0c;而基因组就是指一个细胞中包含的所有的DNA。我们的…

系统安全: GeneXus 新身份验证方案

GAM 是 GeneXus 访问管理器&#xff0c;用于在您的应用程序中实现身份验证和授权&#xff0c;此功能为GeneXus内置功能。 介绍前我们先了解安全和身份验证领域正在发生的事情。 Auth0关于市场上可用的身份验证方案的调查显示&#xff1a; 28% 提供多因素身份验证&#xff0c;这…

Jetson Xavier NX

Jetson Xavier NX 提示&#xff1a;记录学习过程&#xff0c;倘若有抄袭请原谅 文章目录 Jetson Xavier NX前言一、安装系统二、烧镜像三、启动系统打开风扇先 四、配置VNC&#xff08;此处借鉴&#xff09;五、安装中文输入法六、安装cuda七、安装pytorch跟torchvision八、试试…

GeneXus学习记录——创建KB(KnowledgeBase/知识库)

GeneXus安装好之后&#xff0c;怎么创建一个知识库呢&#xff1f; 只需要点文件-新建-知识库&#xff0c;就可以了。 弹出的窗口填写KB名字&#xff0c;选择保存目录&#xff0c;点创建。 这里有一个注意点&#xff1a;数据库排序规则。 点开高级&#xff0c;可以看到这里SQL…

GeneXus试用报告

GeneXus试用报告 (上) GeneXus 自称为业界第一款智能开发工具&#xff0c;由乌拉圭的ARTech公司出品&#xff0c;通过描述应用软件的知识库&#xff0c;可以自动生成数据库模型&#xff0c;自动生成.net或Java两大平台的代码。 最近试用了GeneXus&#xff0c;并计划用GeneXus来…

GeneXus学习记录——Transaction

GeneXus中的Transaction是用于描述对象的模型。 英文描述&#xff1a; Describes an object or actor of reality, defining the structure of the database, business rules, and the UI for data manipulation. 翻译了一下&#xff1a; 描述真实的对象或参与者&#xff0c;定…

GeneXus学习记录

最近在网上看到了一个开发工具&#xff0c;叫GeneXus&#xff0c;很有特色的一个平台&#xff0c;在这里记录一下学习过程。 这个是中文官网GeneXus&#xff0c;这个是Global官网GeneXus。 看了一下介绍&#xff0c;很有特点&#xff0c;贴两张图感受一下 利用算法自动分析…

GeneXus学习(一)安装与介绍

转&#xff1a;https://blog.csdn.net/csdn_1573/article/details/120081202GeneXus安装 开始学习GeneXus&#xff0c;第一步就是环境的搭建。 说明文档 查看官网上学习中心&#xff0c;下方有一个安装及申请授权的说明文档。 按照文档中的步骤来做&#xff0c;除了GeneXus软件…

关于 GeneXus 起源的几点思考

译者序 不论是初次接触GeneXus&#xff0c;还是使用GeneXus很长时间&#xff0c;我们大家常常有一些疑问&#xff1a;在由欧美国家占绝对主导地位的软件领域&#xff0c;一个来自南美的小国-乌拉圭&#xff0c;竟然出了一个世界知名的软件公司&#xff1f;30多年几乎跨越软件发…