Oracle 12c新特性之翻页查询

即将发布的Oracle 12c中引入了翻页查询优化,通过使用`fetchfirst`和`offset`替代传统`rownum`方式,简化翻页查询操作,并显著提高性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在即将发布的oracle 12c中,有一个新特性非常值得期待,这就是翻页查询优化。

在应用中有很多翻页查询功能,以前我们都是使用rownum来实现。

如查询1-10条记录,使用的查询语句就是这样:

 

select *
  from (select row_.*, rownum rownum_
          from (select doc_id,
                       title,
                       title_color,
                       title_striking,
                       upload_date,
                       editor
                  from ttt_doc)
         order by upload_date desc) row_
 where rownum <= 10)
 where rownum_ > 0;
  

 

(miki西游 @mikixiyou 原文链接: http://mikixiyou.iteye.com/blog/1685165 )

 

在12c中,可以这样做了。

 

select doc_id, title, title_color, title_striking, upload_date, editor
  from ttt_doc
 order by upload_date desc
 fetch first 10 rows only;
 

 

 

如果你要查询11到20条的记录,那么你可以这样做。

 

select doc_id, title, title_color, title_striking, upload_date, editor
  from ttt_doc
 order by upload_date desc
 offset 10 rows
 fetch next 10 rows only; 
 

 

 

这样比以前的操作方便多了。当然,更重要的一点是,性能会大幅提升。

 

如果您希望了解更详细的信息,可去查阅oracle 12c的文档。

 

--end

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值