在oracle中,可用“between and”查询指定时间范围的数据,语法为“select*from 表名 where 字段 between to_date(起始时间,起始时间格式) and to_date(终止时间,终止时间格式)”。

本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。

oracle怎样查询指定时间范围

在oracle中,想要查询指定的时间范围,可以利用between and和to_date()函数。

to_date()与24小时制表示法及mm分钟的显示:

一、在使用Oracle的to_date函数来做日期转换时,很多Java程序员也许会直接的采用“yyyy-MM-dd HH:mm:ss”的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA 01810 格式代码出现两次”。

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from dual;

原因是SQL中不区分大小写,MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;

二、另要以24小时的形式显示出来要用HH24

select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;//mi是分钟

select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual;//mm会显示月份 oracle中的to_date参数含义

between and本身是全闭区间,包含端点的值。

注意:使用to_date进行时间筛选的时候,比如2015-02-28是从当天的00:00:00开始计算的。因此如果范围是2015-02-28 到2015-03-01,时间范围实际上是左闭右开的。不包含2015-03-01这一天的数据。

示例如下:

select * from tab where dtcol between to_date('2012-05-01 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2012-05-31 00:00:00','yyyy-mm-dd hh24:mi:ss')

推荐教程:《Oracle教程》

以上就是oracle怎样查询指定时间范围的详细内容,转载自php中文网

点赞(564) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部