oracle数据库查询分组之外的数据方法------不使用group by

需求:想根据某一个字段进行分组,然后取出所有的列数据,在mysql 中,可以直接通过 group by 进行相应的操作获取数据,

但是在ORACLE中,所取的字段必须要与group by 中相一致,才能进行读取操作,因为分组后的其他字段,oracle 并不知道要返回哪一个,但是这种需求又是存在的。怎么办,找到的解决方案:

-- 格式
select *
  from (select t.*,
               row_number() over(partition by 分组字段 order by rownum) rn
          from 表名 t
         where 条件语句)
 where rn = 分组中的第几条;

 


--  xuxi
select *
  from (select t.*,
               row_number() over(partition by ext_word order by rownum) rn
          from BASE_EXT_DICT  t
         --where    -- 此处可以加条件
          )
 where rn = 2;--2表示:分组后相同数据的第二条

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值