oracle-函数-trunc-round-日期函数

2024-04-12 16:48
文章标签 oracle 函数 round 日期 trunc

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

一、oracle trunc函数处理日期

select trunc(sysdate) from dual; --默认截取到天

2017-09-12 00:00:00

select trunc(sysdate,'dd') from dual;--截取到天

2017-09-12 00:00:00

select trunc(sysdate,'') from dual; 

select trunc(sysdate,'year') from dual; --截取到年(本年的第一天)

select trunc(sysdate,'q') from dual; --截取到季度(本季度的第一天)

select trunc(sysdate,'month') from dual; --截取到月(本月的第一天)

 

select trunc(sysdate,'w') from dual;  -- 离当前时间最近的周四,若当天为周四则返回当天,否则返回上周四????

select trunc(sysdate,'ww') from dual;  --截取到上周末(上周周六)????

 

 

select trunc(sysdate,'day') from dual; --截取到周(本周第一天,即上周日)

select trunc(sysdate,'iw') from dual; --本周第2天,即本周一

 

 

select trunc(sysdate,'hh24') from dual;  --截取到小时(当前小时,零分零秒)

2011-12-29 16:00:00

select trunc(sysdate,'mi') from dual; --截取到分(当前分,零秒)

2011-12-29 16:24:00

 

select trunc(sysdate,'ss') from dual ;--报错,没有精确到秒的格式

 

 

二、oracle trunc函数处理数值

trunc(x[,y]) 
【功能】返回x按精度y截取后的值 
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。 如果y小于0,且y的绝对值大于或等于x整数的位数,则返回为0。如:TRUNC(89.985,-3)=0。
【返回】数字 
【示例】 

selecttrunc(5555.66666,2.7),trunc(5555.66666,-2.6),trunc(5555.733333) fromdual;  

返回:5555.66  5500  5555

selectTRUNC(89.985,-3) fromdual; --0

select TRUNC(89.985,-2) from dual; --0

 

三、oracle round函数处理数值

round(x[,y]) 
【功能】返回四舍五入后的值 
【参数】x,y,数字型表达式;y的默认值为0;如果y不为整数则截取y整数部分,如果y>0则四舍五入为y位小数,如果y小于0则四舍五入到小数点向左第y位。 
【返回】数字 
【示例】 select round(1.6),round(1.6,0),round(5555.6666,2.1),round(5555.6666,-2.6),round(5555.6666) from dual; 

返回: 2 , 2 , 5555.67 , 5600 , 5556 
【相近】trunc(x[,y]) 返回截取后的值,用法同round(x[,y]),只是不四舍五入

 

四、oracle round函数处理日期

ROUND(d[,fmt])

ROUND(d[,fmt])

ROUND(d[,fmt])

【功能】返回一个以fmt为格式的四舍五入日期值 
【参数】d是日期,fmt是格式 模型。默认fmt为DDD,即月中的某一天。 

      如果fmt为“YEAR”则舍入到某年的1月1日,即前半年舍去,后半年作为下 一年

      如果fmt为“MONTH”则舍入到某月的1日,即前月舍去,后半月作为下一 月

      默认为“DDD”,即月中的某一天,最靠近的天,前半天舍去,后半天作为第二天

      如果fmt为“DAY”则舍入到最近的周的周日,即上半周舍去,下半周作为下 一周周日

【返回】日期 
【示例】 select sysdate,round(sysdate),round(sysdate,'ddd'),

        round(sysdate,'day'),round(sysdate,'month'),round(sysdate,'year') from dual; 

    返回: 2017-09-13 16:11:13 , 2017-09-14 00:00:00 , 2017-09-14 00:00:00 , 

       2017-09-17 00:00:00 , 2017-09-01 00:00:00 , 2018-01-01 00:00:00

 

 

、oracle 日期函数:ADD_MONTHS、LAST_DAY、EXTRACT

1. ADD_MONTHS(d,n),在某一个日期d上,加上指定的月数n,返回计算后的新日期
【示例】 select sysdate,add_months(sysdate,5) fromdual;

    返回: 2017-09-13 16:35:19 , 2018-02-13 16:35:19

 

2. LAST_DAY(d),返回指定日期当月的最后一天
【示例】 select sysdate,LAST_DAY(sysdate) fromdual;

    返回: 2017-09-13 16:35:19 , 2017-09-30 16:35:19 

 

4. EXTRACT(fmt FROM d),提取日期中的特定部分。

【参数】fmt为:YEAR、MONTH、DAY、HOUR、MINUTE、SECOND。

        其中YEAR、MONTH、DAY可以为DATE类型匹配,也可以与TIMESTAMP类型匹配;

        但是HOUR、MINUTE、SECOND必须与TIMESTAMP类型匹配。

        HOUR匹配的结果中没有加上时区,因此在中国运行的结果小8小时。

【返回】数字 
【示例】 

select sysdate,systimestamp,

  extract(yearfrom sysdate),extract(monthfrom sysdate),extract(dayfrom sysdate),

  extract(hour from systimestamp),extract(minute from systimestamp),extract(second from systimestamp) 

 

fromdual;

    返回: 2017-09-13 16:52:58 , 2017-09-13 17:05:25  GMT+08:00 ,

       2017 , 9 , 13 , 8 , 52 , 58.75

       

这篇关于oracle-函数-trunc-round-日期函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

MySQL count()聚合函数详解

《MySQLcount()聚合函数详解》MySQL中的COUNT()函数,它是SQL中最常用的聚合函数之一,用于计算表中符合特定条件的行数,本文给大家介绍MySQLcount()聚合函数,感兴趣的朋... 目录核心功能语法形式重要特性与行为如何选择使用哪种形式?总结深入剖析一下 mysql 中的 COUNT

MySQL 中 ROW_NUMBER() 函数最佳实践

《MySQL中ROW_NUMBER()函数最佳实践》MySQL中ROW_NUMBER()函数,作为窗口函数为每行分配唯一连续序号,区别于RANK()和DENSE_RANK(),特别适合分页、去重... 目录mysql 中 ROW_NUMBER() 函数详解一、基础语法二、核心特点三、典型应用场景1. 数据分

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

Python get()函数用法案例详解

《Pythonget()函数用法案例详解》在Python中,get()是字典(dict)类型的内置方法,用于安全地获取字典中指定键对应的值,它的核心作用是避免因访问不存在的键而引发KeyError错... 目录简介基本语法一、用法二、案例:安全访问未知键三、案例:配置参数默认值简介python是一种高级编

python 常见数学公式函数使用详解(最新推荐)

《python常见数学公式函数使用详解(最新推荐)》文章介绍了Python的数学计算工具,涵盖内置函数、math/cmath标准库及numpy/scipy/sympy第三方库,支持从基础算术到复杂数... 目录python 数学公式与函数大全1. 基本数学运算1.1 算术运算1.2 分数与小数2. 数学函数

Oracle 数据库数据操作如何精通 INSERT, UPDATE, DELETE

《Oracle数据库数据操作如何精通INSERT,UPDATE,DELETE》在Oracle数据库中,对表内数据进行增加、修改和删除操作是通过数据操作语言来完成的,下面给大家介绍Oracle数... 目录思维导图一、插入数据 (INSERT)1.1 插入单行数据,指定所有列的值语法:1.2 插入单行数据,指

Python中help()和dir()函数的使用

《Python中help()和dir()函数的使用》我们经常需要查看某个对象(如模块、类、函数等)的属性和方法,Python提供了两个内置函数help()和dir(),它们可以帮助我们快速了解代... 目录1. 引言2. help() 函数2.1 作用2.2 使用方法2.3 示例(1) 查看内置函数的帮助(

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

Java日期类详解(最新推荐)

《Java日期类详解(最新推荐)》早期版本主要使用java.util.Date、java.util.Calendar等类,Java8及以后引入了新的日期和时间API(JSR310),包含在ja... 目录旧的日期时间API新的日期时间 API(Java 8+)获取时间戳时间计算与其他日期时间类型的转换Dur

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.