`

ORACLE trunc()函数

阅读更多


1.TRUNC(for dates)
TRUNC函数为指定元素而截去的日期值。
其具体的语法格式如下:
TRUNC(date[,fmt])
其中:
date 一个日期值
fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去
下面是该函数的使用情况:
TRUNC(TO_DATE(’24-Nov-1999 08:00 pm’,’dd-mon-yyyy hh:mi am’))
=’24-Nov-1999 12:00:00 am’
TRUNC(TO_DATE(’24-Nov-1999 08:37 pm’,’dd-mon-yyyy hh:mi am’,’hh’)) =’24-Nov-1999 08:00:00 am’

round (date,''format'')未指定format时,如果日期中的时间在中午之前,则将日期中的时间截断为12 A.M.(午夜,一天的开始),否则进到第二天。

TRUNC(date,''format'')未指定format时,将日期截为12 A.M.,不考虑是否在中午之前的条件。

2.TRUNC(for number)
TRUNC函数返回处理后的数值,其工作机制与ROUND函数极为类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,而统统截去。
其具体的语法格式如下
TRUNC(number[,decimals])
其中:
number 待做截取处理的数值
decimals 指明需保留小数点后面的位数。可选项,忽略它则截去所有的小数部分
下面是该函数的使用情况:
TRUNC(89.985,2)=89.98
TRUNC(89.985)=89
TRUNC(89.985,-1)=80
注意:第二个参数可以为负数,表示为小数点左边指定位数后面的部分截去,即均以0记。

{


format为day时,只精确到天,而不管几年几月只要是符合的day就可以了,要想确定一年中的某月的某一天就要用trunc(date,''dd'').

通俗的说吧,format为年时,精确到-----年

为月时,精确到------年,月(不管哪年,只要是相同的月和哪天)
为日时,精确到------年,月,日(不管哪年的哪月,只关心是哪天)


}

 ///////////////////////////////////////////////////////////////////////////////

 

实例:


  对数字,日期进行的    
  SQL>   select   trunc(sysdate)   from   dual;  
   
  TRUNC(SYSD  
  ----------  
  07-1月   -03  
   
  SQL>   select   trunc(sysdate,'mm')   from   dual;  
   
  TRUNC(SYSD  
  ----------  
  01-1月   -03  
   
  SQL>   select   trunc(sysdate,'yy')   from   dual;  
   
  TRUNC(SYSD  
  ----------  
  01-1月   -03  
   
  SQL>   select   trunc(234.5565)   from   dual;  
   
  TRUNC(234.5565)  
  ---------------  
                          234  
   
  SQL>   select   trunc(sysdate,'D')   from   dual;  
   
  TRUNC(SYSD  
  ----------  
  05-1月   -03  

////////////////////////////////////////////////////////////////////////////

select trunc(sysdate ,'dd') from dual ;   --  2007-9-19

select trunc(sysdate ,'yyyy') from dual ;   --2007-1-1

select trunc(sysdate ,'mm') from dual ;   --2007-9-1


begin
dbms_output.put_line( to_char ( (sysdate)    , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;
dbms_output.put_line( to_char ( (sysdate)+ 1/24/60/10   , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;
dbms_output.put_line( to_char (  ((sysdate)+ 10 / ( 24*60*60 )   )  , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;

dbms_output.put_line( to_char (  trunc((sysdate)+ 10 / ( 24*60*60 )   )  , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;

end ;

begin
dbms_output.put_line( '当前时间 '  ) ;
dbms_output.put_line( to_char ( (sysdate)    , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;

dbms_output.put_line( '当前时间  + 1  s  '    ) ;
dbms_output.put_line( to_char ( (sysdate)+ (((1/24)/60)/60   )   , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;

dbms_output.put_line( '当前时间  + 1  s  '    ) ;
dbms_output.put_line( to_char ( (sysdate)+ (((5/24)/60)/60   )   , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;

dbms_output.put_line( '当前时间  + 10s  '   ) ;
dbms_output.put_line( to_char (  ((sysdate)+  ( 10 / ( 24*60*60 ))    )  , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;

dbms_output.put_line( '当前 日   '   ) ;
dbms_output.put_line( to_char (  trunc((sysdate))  , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;


dbms_output.put_line( '当前  第2天 1点  '   ) ;
dbms_output.put_line( to_char (  trunc(sysdate)+(  1 +  1/24   ) , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;


dbms_output.put_line( '当前  第2天 9点  '   ) ;
dbms_output.put_line( to_char (  trunc(sysdate)+(  1 +  9/24   ) , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;


end ;
/
////////////////////////////////////////////////////////////////////////////

 

 oracle 日期常用函數 (SYSDATE、日期格式)

1    SYSDATE  
2 --◎ 可得到目前系統的時間    
3          
4   ex.     
5     select sysdate from dual;  
6             
7     sysdate     
8     ----------     
9     20-SEP-07  
10       
11 常用之日期格式  
12  
13 日期格式                 說明  
14 ------------------------------------------------------------------------  
15 YYYY/MM/DD              -- 年/月/日   
16 YYYY                    -- 年(4位)  
17 YYY                     -- 年(3位)  
18 YY                      -- 年(2位)  
19 MM                      -- 月份  
20 DD                      -- 日期  
21 D                       -- 星期  
22                             -- 星期日 = 1  星期一 = 2 星期二 = 3  
23                         -- 星期三 = 4  星期四 = 5 星期五 = 6 星期六 = 7  
24                               
25 DDD                     -- 一年之第幾天  
26 WW                      -- 一年之第幾週  
27 W                       -- 一月之第幾週  
28 YYYY/MM/DD HH24:MI:SS   -- 年/月/日 時(24小時制):分:秒  
29 YYYY/MM/DD HH:MI:SS     -- 年/月/日 時(非24小時制):分:秒  
30 J                       -- Julian day,Bc 4712/01/01 為1  
31 RR/MM/DD                -- 公元2000問題   
32                -- 00-49 = 下世紀;50-99 = 本世紀  
33 ex.  
34 select to_char(sysdate,'YYYY/MM/DD') FROM DUAL;             -- 2007/09/20  
35 select to_char(sysdate,'YYYY') FROM DUAL;                   -- 2007  
36 select to_char(sysdate,'YYY') FROM DUAL;                    -- 007  
37 select to_char(sysdate,'YY') FROM DUAL;                     -- 07  
38 select to_char(sysdate,'MM') FROM DUAL;                     -- 09  
39 select to_char(sysdate,'DD') FROM DUAL;                     -- 20  
40 select to_char(sysdate,'D') FROM DUAL;                      -- 5  
41 select to_char(sysdate,'DDD') FROM DUAL;                    -- 263  
42 select to_char(sysdate,'WW') FROM DUAL;                     -- 38  
43 select to_char(sysdate,'W') FROM DUAL;                      -- 3  
44 select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS') FROM DUAL;  -- 2007/09/20 15:24:13  
45 select to_char(sysdate,'YYYY/MM/DD HH:MI:SS') FROM DUAL;    -- 2007/09/20 03:25:23  
46 select to_char(sysdate,'J') FROM DUAL;                      -- 2454364  
47 select to_char(sysdate,'RR/MM/DD') FROM DUAL;               -- 07/09/20 


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhenai/archive/2009/03/22/4015451.aspx

分享到:
评论

相关推荐

    oracle trunc函数使用介绍

    #### 二、TRUNC函数用于日期数据类型 ##### 1. 语法格式 ```sql TRUNC(date[, fmt]) ``` - **date**: 需要被截断的日期值。 - **fmt**: 可选参数,用于指定日期格式。如果不提供此参数,默认为去除日期的时间部分,...

    日常收集整理oracle trunc 函数处理日期格式(很实用)

    本文给大家分享的oracle trunc 函数处理日期格式的相关知识,非常具有参考价值,具体请看下文说明吧。 代码如下: select to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’) from dual; –显示当前时间 2011-12-29 16:...

    Oracle中trunc()函数用法处理日期、数字类型数据

    Oracle 中的 TRUNC 函数用法处理日期、数字类型数据 TRUNC 函数是 Oracle 中的一个重要函数,它可以用来截断日期和数字类型的数据。下面我们将详细介绍 TRUNC 函数的用法和特点。 一、日期 TRUNC 函数 TRUNC 函数...

    Oracle常用函数Trunc及Trunc函数用法讲解

    Oracle数据库中的`TRUNC`函数是一个非常实用的函数,它在处理日期和数值时具有不同的功能。本篇文章将深入解析`TRUNC`函数在日期和数值处理中的具体用法。 ### 日期处理 在日期处理方面,`TRUNC`函数主要用于截取...

    oracle trunc()函数的使用方法

    TRUNC函数为指定元素而截去的日期值。 其具体的语法格式如下: TRUNC(date[,fmt]) 其中: date一个日期值 fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去 下面是该函数的使用情况: ...

    oracle的trunc函数使用实例

    详细介绍了 oracle 内置 trunc 函数的使用场景及实例,对日期格式和数字格式的数据进行操作

    oracle-trunc函数使用介绍.doc

    oracle-trunc函数使用介绍.doc

    Oracle自我补充之trunc()函数的使用方法

    Oracle数据库中的TRUNC函数是一个非常实用的工具,用于处理日期和数字类型的数据。它有两种主要的用法,分别针对日期和数字。 对于日期,TRUNC函数的主要作用是将日期值截断到特定的时间元素,例如年、月、日、小时...

    trunc函数应用实例

    `TRUNC`函数在Oracle数据库中是一个非常实用的日期处理函数,它被广泛应用于日期比较、事务调度和其他需要精确控制日期时间的操作中。在没有指定`fmt`参数时,`TRUNC`函数会将日期时间截断到最近的天。例如,`SELECT...

    oracle中函数 trunc(),round(),ceil(),floor的使用详解

    1.round函数(四舍五入) 描述 : 传回一个数值,该数值是按照指定的小数位元数进行四舍五入运算的结果 参数: number : 欲处理之数值 decimal_places : 四舍五入 , 小数取几位 ( 预设为 0 ) select round(123.456, ...

    oracle函数大全(CHM格式).rar

    4. **日期时间函数**:`ADD_MONTHS`添加月份,`EXTRACT`提取日期部分,`TRUNC`截断日期到指定精度。 5. **转换函数**:`TO_CHAR`和`TO_DATE`用于字符串与日期之间的转换,`TO_NUMBER`将字符串转换为数值。 6. **系统...

    Oracle常用函数大全

    Trunc函数可以将日期截断到最接近的日期,例如截断到当前年的1月1日。其语法为`Trunc(date, unit)`,其中`date`是要截断的日期,`unit`是截断的单位,可以是`day`、`month`、`year`等。 例如,下面的SQL语句可以将...

    oracle内置函数学习

    首先,Oracle提供了丰富的数学函数,如ROUND()用于四舍五入,TRUNC()用于截断小数部分,MOD()计算两个数相除的余数,以及EXP()计算数值的指数。这些函数在处理数值计算时非常实用,能够确保数据的精确性和合理性。 ...

    oracle日期函数全面总结

    Oracle数据库系统中,日期函数是进行时间数据处理的关键工具,对于数据库管理员和开发人员来说,理解和熟练使用这些函数至关重要。本篇文章将全面总结Oracle中的日期函数,帮助你解决日常工作中遇到的各种日期处理...

    oracle最常用的函数或方法总结

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,其丰富的函数和方法库为SQL查询提供了强大的支持。在日常的数据操作和分析中,掌握一些常用的Oracle函数和方法是至关重要的。以下是对"Oracle最常用的...

    oracle 内置函数大全

    Oracle内置函数是其强大功能的关键组成部分,这些函数极大地丰富了SQL语言的表达能力,使得数据处理和查询更为便捷高效。以下是对Oracle内置函数的详细概述: 1. **数学函数**: - `ABS(x)`:返回x的绝对值。 - `...

    oracle日常函数文档

    Oracle提供了多种数学函数,如`ABS()`, `SQRT()`, `MOD()`, `ROUND()`, `TRUNC()`, `CEIL()`, `FLOOR()`等。`ABS()`返回一个数的绝对值,`SQRT()`计算平方根,`MOD()`返回两数相除的余数,`ROUND()`、`TRUNC()`和`...

    oracle常见函数整理

    Oracle常见函数整理 Oracle提供了多种函数来处理日期、数字和字符类型的数据,以下是常见的Oracle函数整理: 日期函数: 1. 日期转字符型:to_char()函数将日期类型转换为字符类型,例如to_char(sysdate,'YYYY-MM...

Global site tag (gtag.js) - Google Analytics