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

相关文章

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. 每

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta