手机版
你好,游客 登录 注册
背景:
阅读新闻

Oracle数据库日期过滤方法性能比较

[日期:2015-02-02] 来源:Linux社区  作者:lhl6688 [字体: ]

Oracle数据库日期过滤方法性能比较

在开发SQL时,过滤日期段是经常遇到的情况,如何高效的过滤出日期段?本文通过实验进行验证:

方法一、通过to_char将日期转换成字符串进行比较

to_char(cr.contractenddate, 'YYYY-MM-DD') >= '2014-11-13'

and to_char(cr.contractenddate, 'YYYY-MM-DD') <= '2015-11-19'

耗时:0.171s

方法二、通过to_date将字符串转换成日期进行比较

cr.contractenddate >= to_date('2014-11-13', 'YYYY-MM-DD')

and cr.contractenddate <= to_date('2015-11-19', 'YYYY-MM-DD')

耗时:0.093s

方法三、通过数据库关键字between  and 进行比较

cr.contractenddate

between to_date('2014-11-13', 'YYYY-MM-DD') and to_date('2015-11-19', 'YYYY-MM-DD')

耗时:0.078s

总结:方法一耗时体现在需要逐个比较字符串的每个字符;

方法二耗时体现在>= 和<=;

推荐使用方法三

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-02/112680.htm

linux
相关资讯       Oracle数据库  Oracle数据库日期 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款