oracle中的INTERVAL函数学习总结

2024-05-31 17:04

本文主要是介绍oracle中的INTERVAL函数学习总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

       Oracle 从9i数据库开始引入了一种新特性,可以用来存储时间间隔,出现了INTERVAL 函数。这个函数的表达式比较多,初学比较费劲不好掌握,经过以几个小时的查阅资料和实验,总结如下:
           interval year to month 类型:
格式: INTERVAL 'integer [- integer]' {YEAR | MONTH} [(precision)][TO {YEAR | MONTH}]
该数据类型常用来表示一段时间差, 注意时间差只精确到年和月. precision为年或月的精确域, 有效范围是0到9, 默认值为2。
           inter day to second 类型:
格式:INTERVAL '{ integer | integer time_expr | time_expr }' { { DAY | HOUR | MINUTE } [ ( leading_precision ) ] | SECOND [ ( leading_precision [, fractional_seconds_precision ] ) ] } [ TO { DAY | HOUR | MINUTE | SECOND [ (fractional_seconds_precision) ] } ]
       leading_precision值的范围是0到9, 默认是2. time_expr的格式为:HH[:MI[:SS[.n]]] or MI[:SS[.n]] or SS[.n], n表示微秒。
范围值: HOUR: 0 to 23
MINUTE: 0 to 59
SECOND: 0 to 59

实验结果备注如下,下面用sql和备注很清晰简洁的表达很容易熟悉各个表达式的作用:

select INTERVAL '12' YEAR 年, --只能整数--默认精度两位数,范围为0~9INTERVAL '123' YEAR(3) 年, --超过2位要指定精度INTERVAL '1' YEAR 年,INTERVAL '-12' YEAR 年,INTERVAL '-12' MONTH 月,--只能整数--默认精度两位数--默认精度是3位INTERVAL '-11' MONTH 月,INTERVAL '-2' MONTH 月,INTERVAL '12' MONTH 月,INTERVAL '11' MONTH 月,INTERVAL '123' MONTH 月,--默认精度是3位,范围为0~9INTERVAL '-123456' MONTH(5) 月,--超过3位要指定精度INTERVAL '12' DAY 天, --只能整数--默认精度两位数,范围为0~9INTERVAL '-12' DAY 天,INTERVAL '123' DAY(3) 天, --超过2位要指定精度INTERVAL '-1234' HOUR 小时, --只能整数---默认精度是4位,范围为0~9INTERVAL '12345' HOUR(5) 小时, --超过4位要指定精度INTERVAL '-13245' MINUTE 分钟, --只能整数---默认5位,范围为0~9INTERVAL '1234567' MINUTE(7) 分钟, --超过5位要指定精度INTERVAL '-1234567' second 秒, --秒,可以带小数,默认7位,范围为0~9INTERVAL '12345678.23' second(8) 秒, --超过7位要指定精度INTERVAL '123-2' YEAR(3) TO MONTH 年到月, --表示: 123年2个月, "YEAR(3)" 表示年的精度为3, 可见"123"刚好为3为有效数值, 如果该处YEAR(n), n<3就会出错, 注意默认是2INTERVAL '0 12' DAY TO HOUR 天和小时, --0天12小时,不能有小数INTERVAL '1 12:23' DAY TO minute 天到分钟, --0天12小时23分,不能有小数INTERVAL '2 12:23:12' DAY TO SECOND 天到秒, --0天12小时23分12秒,可以有小数INTERVAL '4 5:12:10.222' DAY TO SECOND(3) 天到秒小数,--INTERVAL '11:60' HOUR TO MINUTE,INTERVAL '2:59' HOUR TO MINUTE 时到分, --转换到哪一级,字符串里的表达式就要写到那级,不能有小数--INTERVAL '12:00' HOUR TO SECOND ,INTERVAL '12:01:01' HOUR TO SECOND 时分秒,INTERVAL '12:01:00.1234567' HOUR TO SECOND 时分秒小数, --默认小数是6位,最后一位会四舍五入INTERVAL '11:12:10.1234567' HOUR TO SECOND(7) 时分秒7位, --指定7为小数后可以呈现7位INTERVAL '23:12' MINUTE TO SECOND 分钟到秒,INTERVAL '23:12.22' MINUTE TO SECOND 分钟到秒小数from dual;select INTERVAL '123' YEAR  from dual; --执行错误,year默认精度是2,但是123是3位。select INTERVAL '5-3' YEAR TO MONTH + INTERVAL '20' MONTH from dual; --表示: 5年3个月 + 20个月 = 6年11个月select  INTERVAL '12345' HOUR(9) 小时,INTERVAL '1234567' MINUTE(9) 分钟,INTERVAL '12345678.23' second(9) 秒
from dual

通过上面的SQL,可以很容易看出各个级别的表达式的规律。分享给各位程序开发人员。

这篇关于oracle中的INTERVAL函数学习总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1018518

相关文章

Oracle查询表结构建表语句索引等方式

《Oracle查询表结构建表语句索引等方式》使用USER_TAB_COLUMNS查询表结构可避免系统隐藏字段(如LISTUSER的CLOB与VARCHAR2同名字段),这些字段可能为dbms_lob.... 目录oracle查询表结构建表语句索引1.用“USER_TAB_COLUMNS”查询表结构2.用“a

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

Spring Boot 与微服务入门实战详细总结

《SpringBoot与微服务入门实战详细总结》本文讲解SpringBoot框架的核心特性如快速构建、自动配置、零XML与微服务架构的定义、演进及优缺点,涵盖开发环境准备和HelloWorld实战... 目录一、Spring Boot 核心概述二、微服务架构详解1. 微服务的定义与演进2. 微服务的优缺点三

postgresql使用UUID函数的方法

《postgresql使用UUID函数的方法》本文给大家介绍postgresql使用UUID函数的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录PostgreSQL有两种生成uuid的方法。可以先通过sql查看是否已安装扩展函数,和可以安装的扩展函数

MySQL字符串常用函数详解

《MySQL字符串常用函数详解》本文给大家介绍MySQL字符串常用函数,本文结合实例代码给大家介绍的非常详细,对大家学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql字符串常用函数一、获取二、大小写转换三、拼接四、截取五、比较、反转、替换六、去空白、填充MySQL字符串常用函数一、

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每