业务场景:

在针对某个类型数据存在多条时,但只想取最新的一条。在可以确定时哪种类型时我们使用简单sql就可以解决。

如: select * from ( select * from t_table a where a.tpye=? order by a.time desc ) where rownum=1;

但是在我们不确定时哪种类型时,需要全表扫描或者多数据扫描时,就需要用到oracle中特有的函数解决了。

如:select * from (select  a.type,row_number() over(partition by a.type order by a.time desc) as rn from t_table a where xxxx) where rn=1;

其中partition by后面跟的字段表示根据此字段去区分跟分组,order by 进行排序,row_number() over 这个表示根据里面的条件去获取行数,

总结这个函数的意思:根据type字段分组根据time字段排序后,获取此type在表中存在多少数据(存在多少则表示rn有多少行)rn=1表示取第一行也就拿到了最新的数据。

oracle针对多数据只取最新一条的sql相关推荐

  1. 1对多 只取一条 mysql_MySQL 多表关联一对多查询实现取最新一条数据的方法示例...

    本文实例讲述了MySQL 多表关联一对多查询实现取最新一条数据的方法.分享给大家供大家参考,具体如下: MySQL 多表关联一对多查询取最新的一条数据 遇到的问题 多表关联一对多查询取最新的一条数据, ...

  2. oracle取最新一条数据

    好几年没用过oracle了,都忘记了. 最近在做一个项目,数据库就是用的oracle,正好有个获取最新一条数据的需求. 在网上参考了他人的sql,放在自己这儿就是不行.下边是他们的sql SELECT ...

  3. mysql分组分批_[Mysql]分组取最新一条

    我有如下这张表的数据,需要根据mobile电话号码分组,每条电话取最新的数据 方案1: SELECT * from (SELECT * from model_online_forecastscore_ ...

  4. oracle关联表查询记录表最新一条记录

    SELECT * FROM 表1 t1JOIN (SELECT *,ROW_NUMBER() OVER(PARTITION BY 单据ID ORDER BY 处理时间 DESC) rnFROM 表2) ...

  5. SQL分组查询,结果只取最新记录

    select a.* from (select * from TABLE order by create_time desc) a group by a.user_id 这里查询的是USER_ID相同 ...

  6. js 数组对象只取前4条数据的值

    一个长度是5的数组,只取前三个数组对象 arr = arr.slice(0,4) 注意这个方法不改变原数组,所以需要用=

  7. sql查询重复数据只取最新得一条

    SELECT * FROM table WHERE id IN ( select max(id) from tablegroup by a,b ) 先找出重复数据的 最大的Id ( group by ...

  8. laravel leftjoin 右侧取最新一条_高铁规划:湖南至广西将增添一条高铁,填补中西部地区铁路网空白...

    阅读本文前,请您先点击上面的蓝色字体"细柳情感吧",再点击"关注",这样您就可以继续免费收到最新文章了.每天都有分享.完全是免费订阅,请放心关注. 旅行,既能体 ...

  9. linux的history命令只显示最新10条

    history命令可以显示历史的命令,但是有时候会展示出很多条. 如果只想展示最新的几条可以直接在后面加入数字: [root@localhost docker]# history 5904 docke ...

最新文章

  1. jquery eval解析JSON中的注意点介绍
  2. 易能变频器说明书故障代码_易能变频器故障代码大全是什么?E013故障是什么?...
  3. 锐捷RG-S2126G交换机密码恢复实战
  4. oracle创建表语句_利用FME去拼接SQL语句并创建表
  5. 信息系统项目管理师_信息系统项目管理师历史文章总结
  6. 怀化学院计算机科学专业排名,2019怀化学院专业排名
  7. matlab tf-idf,java 兑现tfidf
  8. C++泛型算法的小总结
  9. [转]你可能不知道的五个强大HTML5 API
  10. 985 硕士待业200天,工作 10 年存款 2W : 累死你的不是工作,而是“选择”
  11. 在地图上点击一下,在图层上画一个点,并显示相关的信息
  12. 工业级Pass云平台SpringCloudAlibaba综合项目实战(一):序言
  13. DTCC 回顾:技术破局,分布式数据库创赢未来
  14. 开启nexus出现If you insist running as root, then set the environment variable RUN_AS_USER=root
  15. 网吧游戏服务器制作教程,图文教程:网吧无盘系统服务端设置细节
  16. oracle开机自启
  17. spring data jdbc的简单教程
  18. VSCode 居然是个娱乐软件?让你 high 到爆的几款插件
  19. PHP连接MSSQL配置和PHP代码演示
  20. 为什么Vertu没有成为诺基亚的iPhone?

热门文章

  1. Openstack中给windows虚拟机加载virtion驱动
  2. MathType如何正确卸载?
  3. 2016年中国前1000名公众号最新报价
  4. wifi叹号android,Wifi出现感叹号怎么解决 Wifi故障解决方法【步骤】
  5. 初始C语言——求算法,求1-1/2+1/3-1/4+……+1/99-1/100的值
  6. 如何将JPG格式图片转换成BMP格式
  7. S4不得不知道的SQL查询工具DB01
  8. 自信比能力更重要,知识比财富更重要,诚实比勤奋更重要,宽容比原谅更重要,过程比结果更重要
  9. 过滤 Excel 表格内容中的无效字符
  10. java简单实现在线资源多线程下载,断点续存,限制最大正在下载数