Rumah  >  Artikel  >  pangkalan data  >  oracle怎样查询指定时间范围

oracle怎样查询指定时间范围

WBOY
WBOYasal
2022-01-21 11:58:0544310semak imbas

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

oracle怎样查询指定时间范围

本教程操作环境: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教程

Atas ialah kandungan terperinci oracle怎样查询指定时间范围. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Oracle怎样查询重复字段Artikel seterusnya:oracle中or的用法是什么