oracle数据库中,使用plsql执行查询,默认查询时间区间的语句为:
select fzrq
from dj_djb
where FZRQ >= TO_DATE('2019-01-01 00:00:00','YYYY-MM-DD hh24:mi:ss')
AND FZRQ <= TO_DATE('2019-02-28 23:59:59','YYYY-MM-DD hh24:mi:ss')
执行结果示例:
但是我需要查询19年1月份每天下午2点到3点的记录,该如何查询:
select fzrq,to_char(fzrq,'hh24')
from dj_djb
where FZRQ >= TO_DATE('2019-01-01 00:00:00','YYYY-MM-DD hh24:mi:ss')
AND FZRQ <= TO_DATE('2019-02-28 23:59:59','YYYY-MM-DD hh24:mi:ss')
AND to_char(fzrq,'hh24') Between 14 And 15
对比一下,是否就实现了目的呢?
这里的重点是使用 to_char(fzrq,'hh24'),很多用户百度到的都是datepart(mm,getdate())函数,但是在oracle中会报:ORA-00904:"DATEPART":标示符无效的错。
* to_char()函数可以取到时期中的各个