oracle sql 按某个字段分组然后从每组取出最大的一条纪录
来源:互联网 发布:10.2怎么卸载软件 编辑:程序博客网 时间:2024/05/22 12:14
oracle sql(按某个字段分组然后从每组取出最大的一条纪录)?
比如表 mo_partprg
字段有:listid recid
1 1
1 2
2 3
2 4
2 5
想得到的数据是 按照 listid 分组 然后取出每组中recid最大的那几条纪录。结果应该是这两条纪录:
字段:listid recid
1 2
2 5
写法如下:
select listid,recid
from ( select listid,recid,row_number() over(partition by listid order by recid desc) rn
from mo_partprg)t1 where rn=1;
来自:http://mrliuliming.blog.sohu.com/131098537.html
积分商城需求:获取审核通过后的最后一条记录:
数据源:select bwip.busi_ware_id, bwip.busi_id, bwip.ware_code, bwip.ware_name,bwip.last_update_date,bwip.busi_state
from busi_ware_info_parent bwip
where bwip.ware_code = '951383'
order by bwip.last_update_date
from busi_ware_info_parent bwip
where bwip.ware_code = '951383'
order by bwip.last_update_date
要求: 需求获取红色部分的内容,,那么对应的SQL语句为
select ware_code, busi_ware_id
from ( select bwip.ware_code,
bwip.busi_ware_id,
row_number() over(partition by bwip.ware_code order by bwip.busi_ware_id desc) rn
from busi_ware_info_parent bwip,
ware_pc_rlt wpr,
busi_ware_info bwi
where bwip.type_code in ('5' , '6')
and bwip.ware_id = wpr.p_ware_id
and wpr.c_ware_id = bwi.ware_id
and bwip.ware_code = '951383'
)
where rn = 1
from ( select bwip.ware_code,
bwip.busi_ware_id,
row_number() over(partition by bwip.ware_code order by bwip.busi_ware_id desc) rn
from busi_ware_info_parent bwip,
ware_pc_rlt wpr,
busi_ware_info bwi
where bwip.type_code in ('5' , '6')
and bwip.ware_id = wpr.p_ware_id
and wpr.c_ware_id = bwi.ware_id
and bwip.ware_code = '951383'
)
where rn = 1
其中: row_number() over( partition by 分组字段 order by 排序字段 desc
0 0
- 【Oracle】oracle sql 按某个字段分组然后从每组取出最大的一条纪录
- oracle sql 按某个字段分组然后从每组取出最大的一条纪录
- oracle sql 按某个字段分组然后从每组取出最大的一条纪录
- oracle 按某个字段分组然后从每组取出最大的一条纪录
- 按照某个字段分组,取出最大的一条记录
- Oracle SQL查询每组中某个字段最大的那笔资料
- Mysql从某个字段的每类中取最大最小值
- Mongo分组取每组最大的一条记录
- yii 使用原生sql 查询 以某一字段分组 每个字段取出最新的一条数据
- Oracle数据分组后取每组的一条记录
- SQL 先分组后排序 然后每组取最大一行
- 从几组题目中选取出每组rightnum<10的rightnum最大的条目信息(sql学习)
- sql 按字段分组后取日期最新的一条
- sql获取分组后取某字段最大一条记录
- 取出分组之后每组前10条数据 oracle
- sql count某个group by出来的分组后,能按条件取出该分组的某个值
- oracle 根据某个字段分组,再根据另一个字段排序的sql查询 即 组内排序
- mysql sql 笔记-获取分组中某个字段的最大的行
- D_VCS
- Juuluu 旗下企业网站管理系统3.0.1发布!
- poj 2289 二分
- 【服务器架构】简单实用的网游服务器架构
- D_db2 EXPLAIN分析SQL
- oracle sql 按某个字段分组然后从每组取出最大的一条纪录
- V会给客户解决了
- java学习笔记
- Linux 下svn配置
- Java动态缓存技术:WEB缓存应该如何应用
- V4L2应用层编程
- 【服务器架构】网游服务器数据访问架构模式
- 7.23_java学习_字符串
- 关于Ubuntu包的降级