oracle数据库去重查询_oracle高效去重

oracle数据库去重查询_oracle高效去重数据库多字段去重方法介绍:distinct关键字、groupby 、row_number()over()

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

oracle 数据库多字段去重

方法介绍:distinct 关键字、group by  、row_number ()over(partition by 列 order by 列 desc)

我的需求是:根据某几列去重 查询出去重后的全部信息。最后我选择的是第三种方法。

我的想法:我想找出一种更简单的方法去 实现去重查询。越直接越好。

表结构&&内容

oracle数据库去重查询_oracle高效去重

1、distinct 关键字的用法:distinct 关键字后面的字段组合去重 distinct 必须

select distinct id from test

结果 ;根据id 去重

select distinct id,name from test

结果:根据id和name 组合去重(类似于  id || name  这样去重)

oracle数据库去重查询_oracle高效去重

2、group by 分组去重

select id,name from test group by id,name

结果:根据id,name 组合去重

oracle数据库去重查询_oracle高效去重

3、row_number ()over(partition by 列 order by 列 asc | desc)方法

3.1 row_number() over(order by column asc)   先对列column按照升序,再为每条记录返回一个序列号

3.2 row_number() over(partition by column1 order by column2 asc) 先按照column1分组,再对分组后的数据根据column2 升序排列

注:order by 必须得有

例子select a.*,row_number() over(partition by a.id,a.sex order by name) su from test a;

oracle数据库去重查询_oracle高效去重

去重例子:根据 id和sex 去重

select id,name,sex from(
select a.*,row_number() over(partition by a.id,a.sex order by name) su from test a )
where su=1

结果:

oracle数据库去重查询_oracle高效去重

我的需求是:根据某几列去重 查询出去重后的全部信息。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/187035.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PHP实现一个简单的图书管理系统

    PHP实现一个简单的图书管理系统刚刚我收到了一个消息,老师竟然布置了一个课设,要求做一个后台管理系统。做归做,但是!本着为老师节省时间的心态,我花了大量的时间,消耗了无数脑细胞扫描了一遍老师给的课题,最终掐指一算选了一个最简单的——>"图书管理系统"。刚开始我的想法是用jsp+(struts2+spring+hibernate)+Oracle写的,毕竟以前也用这玩意写过类似的东西,等我打开Oracl…

    2022年5月31日
    33
  • 透视投影变换矩阵推导_矩阵的投影

    透视投影变换矩阵推导_矩阵的投影投影矩阵的推导(DerivingProjectionMatrices) 本文乃译文,原文地址为:http://www.codeguru.com/cpp/misc/misc/math/article.php/c10123__1/Deriving-Projection-Matrices.htm,由于本人能力有限,有译的不明白的地方大家可以参考原文,谢谢^-^!译者:流星上的潴如

    2022年10月5日
    2
  • springboot javamail_spring boot入门

    springboot javamail_spring boot入门一、导入相关依赖在springboot中配置MultipartResolver注:使用了Spring的MultipartFile来接受文件上传才要配置的二、controller(service)

    2022年8月16日
    7
  • 手机设备上touchstart与click的区别

    手机设备上touchstart与click的区别1.基本定义touchstart手指触碰开始就能触发click1.手指触碰2.手指未在屏幕上移动3.在这个dom上手指离开屏幕4.触摸和离开屏幕之间的时间间隔较短因此,click事件有其独特的地方,不能完全用touchstart替代。2.click延时问题因为手机浏览器上,两次轻触是放大操作,在第一次被轻触后,浏览器需要先等一段时间,检…

    2022年6月22日
    34
  • c#面试题及答案2020_2020年1月13日

    c#面试题及答案2020_2020年1月13日Winform常见笔面试题1.如何设置窗体页面的默认提交按钮?设置Form的AcceptButton属性,将用户按Enter时,就相当于单击了AcceptButton属性指定的按钮,就会引发它的Click事件。2.怎么让一个窗体在运行时,只能打开一个?1)可以通过遍历Application的OpenedForms集合,从中如果找到了该Form,将其激活即可2)给该Form定义静态创建方法,除非该页面已经关闭或释放,否则直接返回该实例,不重复创建publicstaticForm1frm;

    2025年7月8日
    3
  • license无效怎么解决_vericut怎么重启许可证

    license无效怎么解决_vericut怎么重启许可证Confluent 修改开源许可证,限制云供应商滥用

    2022年4月21日
    161

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号