当前位置: 首页 > article >正文

Oracle-伪劣rowid和rownumber的用法

-- 伪列 ROWID 物理地址

-- 使用ROWID可以快速的定位表中的某一行

-- ROWID值唯一  用来删除重复数据

-- 建表造数测试

-- rowid 的用法

select rowid,d.* from dept_test d;

-- 删除重复数据

select  a.deptno,min(rowid) as rd from dept_test a group by a.deptno;

select  a.deptno,max(rowid) as rd from dept_test a group by a.deptno;

delete from dept_test d

 where rowid not in(select min(rowid) as rd 

                      from dept_test a 

                     group by a.deptno

                    );

commit;

-- 工作中的删除重复数据 不是所有的字段都是重复的

-- empno一样的就是重复数据  保留时间最大的一条

-- 分析函数

select e.*

      ,rank() over(partition by e.empno order by e.create_date desc) as rk

  from emp_test e;

  -- 取排序等于1的那条

select * from(  

select e.*

      ,rank() over(partition by e.empno order by e.create_date desc) as rk

  from emp_test e) a

 where a.rk = 1;

delete from emp_test t 

 where (t.empno,t.create_date) 

   not in ( 

 select a.empno,a.create_date from(  

select e.*

      ,rank() over(partition by e.empno order by e.create_date desc) as rk

  from emp_test e) a

 where a.rk = 1

 )

commit;

-- 伪列 ROWNUM  给查询的数据一个行号

-- 基本用法

select rownum as rn

      ,e.*

  from emp e;

-- 工资排正序 查询结果集给一个行号

-- 首先我们得给工资排个序

-- 对排序后得结果集再给个序号

select rownum as rn,a.*

  from (select * from emp order by sal) a;


http://www.kler.cn/a/413272.html

相关文章:

  • 【组件封装】uniapp vue3 封装一个自定义下拉刷新组件pullRefresh,带刷新时间和加载动画教程
  • STM32F10x 定时器
  • 比特币libsecp256k1中safegcd算法形式化验证完成
  • 如何搭建一个小程序:从零开始的详细指南
  • 安装QT6.8(MSVC MinGW)+QT webengine+QT5.15.2
  • 损失函数分类
  • 设计模式学习之——责任链模式
  • Educator头歌:离散数学 - 图论
  • 【若依ruoyi Vue前端线上个人服务器部署】以及常见报错问题解决
  • 2024年11月27日Github流行趋势
  • 【Flink-scala】DataStream编程模型之 窗口的划分-时间概念-窗口计算程序
  • Day28 贪心算法 part02
  • CTF之密码学(费纳姆密码)
  • LLamafactory API部署与使用异步方式 API 调用优化大模型推理效率
  • 初识Linux(4):Linux基础环境工具(下)
  • YOLO的框架及版本迭代
  • Mac安装及合规无限使用Beyond Compare
  • Linux iptables 命令详解
  • 【设计模式】【结构型模式(Structural Patterns)】之享元模式(Flyweight Pattern)
  • 八、利用CSS制作导航栏菜单的习题
  • Easyui 实现订单拆分开票功能
  • 算法新篇章:AI如何在数学领域超越人类
  • 【CSS in Depth 2 精译_061】9.4 CSS 中的模式库 + 9.5 本章小结
  • python的openpyxl库设置表格样式:字体/边框/对齐/颜色等
  • ES6中,Set和Map的区别 ?
  • DFS练习题 ——(上)