oracle语句中,如何查询某个时间段的内容,where后应该怎么写,比如我查询3:00到3:30的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle语句中,如何查询某个时间段的内容,where后应该怎么写,比如我查询3:00到3:30的相关的知识,希望对你有一定的参考价值。
数据中有2013-02-24/15:21:38这种的数据
亲,您好。oracle日期可以进行加减的例如:select sysdate,sysdate-1/48 from dual;
sysdate-1/48 就是往前推半个小时
亲的问题可以参考这个写,希望对亲有帮助 参考技术A 如果数据库的列, 是 DATE 类型的话:
WHERE
TO_CHAR( 日期列, 'HH24MI' ) >= '0300'
AND TO_CHAR( 日期列, 'HH24MI' ) <= '0330'
如果是 varchar2 类型的, 就要确定一下, 格式是否都是 固定的格式了。
否则 SUBSTR 计算起来, 也是很麻烦的。追问
HH24MI' 这个是什么,固定的格式吗?应该是date类型的,我读的是 v$sql试图,我想看具体哪个时间段的操作
追答SQL> SELECT TO_CHAR( SYSDATE, 'HH24MI' ) FROM dual;TO_C
----
1527
HH24 是获取时间中的小时部分, 是按24小时的方式来计算的
MI 是获取时间中的 分钟的部分。
追问select *
from v$sql
WHERE TO_CHAR(first_load_time, 'HH24MI') >= '0300'
AND TO_CHAR(first_load_time, 'HH24MI') <= '0330'
这样写对吗?,我运行报错啊,报01722错误
SQL> desc v$sql
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
......
FIRST_LOAD_TIME VARCHAR2(19)
......
FIRST_LOAD_TIME 数据类型是 VARCHAR2(19), 不是 DATE
你这个情况下, 需要用 SUBSTR 函数了
下面是例子
SQL> SELECT2 FIRST_LOAD_TIME
3 FROM
4 v$sql
5 WHERE
6 SUBSTR(FIRST_LOAD_TIME, 12, 5) BETWEEN '02:00' AND '05:00'
7 AND rownum < 5;
FIRST_LOAD_TIME
--------------------------------------
2013-05-27/02:15:26
2013-05-27/02:27:52
2013-05-27/02:34:56
2013-05-27/02:34:56 参考技术B 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');本回答被提问者采纳 参考技术C 用between ‘3:00’ and ‘3:30’
oracle 查询某个字段有多条
参考技术A 查询一列等于多个值可用in或者or。 如test表中有如下内容: 要查询id为1,2,3的数据,可用如下语句: select * from test where id in (1,2,3);结果: 也可用or,语句如下: select * from test where id=1 or id=2 or id=3;结果如下:本回答被提问者采纳 参考技术B select a.col from a group by a.col having count(1)>1;以上是关于oracle语句中,如何查询某个时间段的内容,where后应该怎么写,比如我查询3:00到3:30的的主要内容,如果未能解决你的问题,请参考以下文章
如何在oracle中查询某个表的占用了多大的空间!如果是sql语句请讲的详细子我是菜鸟!