首页 > 数据库 >CMC-ORACLE-函數row_number() over(partition by )函数用法

CMC-ORACLE-函數row_number() over(partition by )函数用法

时间:2023-12-06 23:34:06浏览次数:33  
标签:over partition CMC number rownumber test row

row_number() over(partition by )函数用法

row_number() over(partition by),作为oracle常用的分析函数,身为数据开发时必须要掌握的。不过一段时间不用,难免会有些忘记,今天整理一下一些场景下的用法。

现有表(test_rownumber)有如下数据:

RUSER(用户名) RID(用户编号) RSAL(用户消费) RDATE(日期)

场景一:求每个用户最新日期的信息

先进行分区,然后按日期排序

select r.*,row_number() over(partition by r.ruser, r.rid, r.rsal order by rdate desc) rn
from test_rownumber r

结果如下:

 

最后取rn=1即可得到每个用户最新日期的信息

注意:

如果不先分区,而是直接用日期排序,得到的结果如下

select r.*,row_number() over(order by rdate desc) rn
from test_rownumber r

如果只按用户来分区,得到的结果如下

select r.*,row_number() over(partition by ruser order by rdate desc) rn
from test_rownumber r;--只能得到最新日期用户的一笔信息,而不是两笔

原文链接:https://blog.csdn.net/CWD950926/article/details/90576672

标签:over,partition,CMC,number,rownumber,test,row
From: https://www.cnblogs.com/ViolinHuang/p/17880776.html

相关文章

  • kettle从入门到精通 第二十三课 kettle carte 错误(java.lang.OutOfMemoryError: GC ov
     1、Couldnotemitbufferduetolackofrequests(无法发出缓冲区,因为请求不足。)原因有两点:1)消费者处理数据能力较弱,如表输出步骤。2)消费者没有处理数据,如传递的数据中有字段type=1的数据,这种情况没有处理。解放方案:针对1)采用多线程处理和开启批量提交,如下图所示批量插入......
  • MouseLeave MouseOut MouseEnter MouseOver
    mouseenter事件的作用与CSS伪类:hover非常相似。MouseLeave:MouseEnter:当鼠标在一个元素本身或者其子元素上移动时,mouseover事件在该元素上触发。MouseOut:MouseOver:https://developer.mozilla.org/zh-CN/docs/Web/API/Element/mouseover_event......
  • 搭建DG备库Recover database报错ORA-19909、ORA-01110
    一、问题现象客户环境LinuxOracle11.2.0.4两节点RAC主库,2节点备库;需要对这个客户的数据库使用dg切换进行迁移;第一轮搭建ADG完成后,failoverDG备库变成测试库给开发应用人员进行测试;第二轮正式切换之前,搭建重建ADG环境,restoredatabase正常,recoverdatabase报错ThuOct......
  • final和override
    文章参考:爱编程的大丙(subingwen.cn)1.finalC++11中提供了final关键字。作用:写在类名后面,限制类不能被继承。写在函数后面,限制函数被重写。1.1限制函数被final限制的函数无法被重写。#include<iostream>#include<cstring>usingnamespacestd;classPerson{......
  • 什么是Overlay网络?Overlay网络与Underlay网络有什么区别?
    你们好,我的网工朋友。在传统历史阶段,数据中心的网络是以三层架构(核心、汇聚、接入)为基本标准。但是随着技术的发展,不同的厂家有不同的组建方式,比如说在核心层、汇聚层和接入层增加虚拟化技术。不管怎么改变,都没有改变以太网络传输的基本原则,都是需要靠网络地址、物理地址来进行控制......
  • CTfpwn攻防世界int_overflow对于strlen的利用以及汇编是神
    分析这题题目已经在暗示用int数据的overflow了,不过不急,先分析一下。保护基本没啥保护,也挺好,适合不用搞太多花里胡哨的泄露,只需理解这题想告诉你的知识。后门函数看到有一个whatisthis函数,正是我们要的catflag函数。main函数login函数main函数里需要的操作很简单,只需输入一个1就......
  • 内核文档翻译 —— Overview of the Linux Virtual File System
    原文:https://www.kernel.org/doc/html/latest/filesystems/vfs.html#overview-of-the-linux-virtual-file-systemIntroductionTheVirtualFileSystem(alsoknownastheVirtualFilesystemSwitch)isthesoftwarelayerinthekernelthatprovidesthefilesystemin......
  • elemen-plus点击空白处关闭el-popover
    问题:el-popover设置:visible手动关闭弹窗后,无法点击空白处关闭弹窗。解决方案:<scriptsetuplang="ts">import{ref,unref}from"vue";import{ClickOutsideasvClickOutside}from"element-plus";constpopoverShow=ref(false);//是否显示cons......
  • Lec15 Crash recovery
    xv6文件系统实现分为七层,如图所示Filesystemlogging(文件系统日志)日志驻留在超级块中指定的已知固定位置。它由一个头块(headerblock)和一系列更新块的副本(loggedblock)组成。头块包含一个扇区号数组(每个loggedblock对应一个扇区号)以及日志块的计数。磁盘上的头块中的计数或者为......
  • CF1827C Palindrome Partition 题解
    题目链接点击打开链接题目解法首先考虑一个朴素的\(dp\)令\(f_i\)表示以\(i\)结尾的合法子串的个数为了不重不漏,我们令\(le_i\)表示以\(i\)为右端点,离\(i\)最近的偶回文串的左端点,然后不难得到转移为\(f_i=f_{le_i-1}+1\)为什么不会漏?考虑以\(i\)为右端点,且比......