架构师之oracle--------------over partion by代替group by去重
1.前言.
如题.oracle去重需要考虑效率和可操作性,group by比较麻烦,overpartion by比较方便。. 下面是本人关于over partion by的两点经验.
2.技巧.
(1) 用over partion by比用group by+max好点。
(2)根据rownum<100000等操作,取最新的条件,这样可以避免全表扫描.
3.代码。
select * from( select tName, sName, taName, aId, cTime, rCode, rid, Row_number() OVER (PARTITION BY tName,sName,taName,aId ORDER BY rid desc) rn from (select a.id rid, b.t_name tName, a.s_name sName, a.rcode rCode, c.tname taName, a.accid aId, a.CTM cTime from a, b, c where a.t_type = b.t_code and a.t_id = c.id and a.acc_id ='11111' and rownum<100000 order by cTime desc,tName,sName,taName,rCode ) order by cTime desc) where rn=1
这里over partion by 直接用形如
Row_number() OVER (PARTITION BY tName,sName,taName,aId ORDER BY rid desc) rn
的分组计数器放到要查询的记录最后门,然后包起来用rn=1来去重就可以了,简单粗暴方便,推荐。
架构师之oracle--------------over partion by代替group by去重相关推荐
- java面向对象思维导图_2020年Java进阶架构师的必备思维导图,让你少走弯路!
架构师是什么?要做什么? 架构师 :是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物.架构师不是一个人,他需要建立高效的体系,带领团队去攻城略地,在规定的时间内完 ...
- sqlrelay mysql_数据库连接池SQL Relay安装使用-Java架构师必看
SQLRelay按照其官网http://sqlrelay.sourceforge.net/indePHP SQL Relay按照其官网http://sqlrelay.sourceforge.net/i ...
- javaee 架构师之路
Java程序员 高级特性 反射.泛型.注释符.自动装箱和拆箱.枚举类.可变 参数.可变返回类型.增强循环.静态导入 核心编程 IO.多线程.实体类. 集合类.正则表达式. XML和属性文件 图形编程 ...
- 系统架构师具备的能力和构架师自我培养过程
2019独角兽企业重金招聘Python工程师标准>>> 系统架构师具备的能力 一般来讲,系统架构师应该拥有以下几方面的能力: 1:具备 8 年以上软件行业工作经验: 2:具备 4 年 ...
- Java学习的30个目标以及系统架构师推荐的书
第一阶段 你需要学习JAVA语言的基础知识以及它的核心类库 (collections,serialization,streams,networking, multithreading,reflect ...
- 资深大牛吐血总结:如何成为一名合格的云架构师?
https://cloud.tencent.com/info/e9695bd18d1c7752b3924bb3ac38cc95.html [51CTO技术沙龙]10月27日,让我们共同探索AI场景化应 ...
- 关于架构的优化和设计,架构师必须悟透的事情
原文地址:http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=411196355&idx=1&sn=be0d574b4a1 ...
- 菜鸟要做架构师(一)——如何快速开发中小型系统
俗话说:不想当项目经理的程序员不是好的架构师.相信每一个有上进心的程序员,都有一个架构师的梦.最近完成了一个中小型的项目,让我有了一些感受和想法,于是决定新开一个系列--<菜鸟要做架构师> ...
- 大话架构”阿里架构师的笔记——多研究些架构,少谈些框架
2019独角兽企业重金招聘Python工程师标准>>> 引言:微服务现在辣么火,业界流行的对比的却都是所谓的Monolithic单体应用,而大量的系统在十几年前都是已经是分布式系统了 ...
最新文章
- DateTimePicker——开源的Android日历类库
- python计算机基础_python计算机基础
- 鼎利软件测试终端刷机,世纪鼎利pioneer连接移动平台进行volte测试操作说明.doc...
- 二线制和四线制传感器的区别_消防系统的总线制和二线制什么区别?
- gtk_init参数传递过程(草稿)
- 用python批量发送短信_Python批量发短信
- 团队如何开会,开会准则
- 电子计算机的基本概念简述
- linux-2.6.34.1移植到TQ2440
- 虚拟机 服务器 root,虚拟机切换到root账户
- duet太香啦啦啦啦啦啦啦啦啦啦
- 人造肉在中国还有未来吗?
- WIN10安装与升级的方法
- 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java庆阳红色旅游网站建设s237y
- 计算机图形学常见算法原理,计算机图形学常用算法及代码大全
- 2022年山东省安全员C证特种作业证考试题库模拟考试平台操作
- 送餐机器人 | 美格智能5G智能模组助力无人送餐“如有神助”
- 完美VS2010黑色主题最舒服的护眼主题(包含所需插件)
- vsan虚拟化和共享存储服务器,1.1 vSAN入门及数据存储
- zoom 用户被锁定_深入研究针对Zoom用户的重新打包的APK