oracle语句中,如何查询某个时间段的内容,where后应该怎么写,比如我查询3:00到3:30的

数据中有2013-02-24/15:21:38这种的数据
2024-11-13 07:57:25
推荐回答(4个)
回答1:

亲,您好。oracle日期可以进行加减的
例如:select sysdate,sysdate-1/48 from dual;
sysdate-1/48 就是往前推半个小时
亲的问题可以参考这个写,希望对亲有帮助

回答2:

如果数据库的列, 是 DATE 类型的话:

WHERE
TO_CHAR( 日期列, 'HH24MI' ) >= '0300'

AND TO_CHAR( 日期列, 'HH24MI' ) <= '0330'

如果是 varchar2 类型的, 就要确定一下, 格式是否都是 固定的格式了。
否则 SUBSTR 计算起来, 也是很麻烦的。

回答3:

SQL>alter session set nls_date_format='YYYY-MM-DD/HH24:MI:SS';
SQL>select to_char(sysdate,'YYYY-MM-DD/HH24:MI:SS') from dual;
SQL>select TO_DATE( '2013-05-31/01:23:45', 'YYYY-MM-DD/HH24:MI:SS') from dual;
SQL>select count(*) from table_name where create_time between to_date('2013-05-31/03:00:00','YYYY-MM-DD/HH24:MI:SS') and to_date ('2013-05-31/03:30:00','YYYY-MM-DD/HH24:MI:SS');

回答4:

用between ‘3:00’ and ‘3:30’