参考:http://www.cnblogs.com/xd502djj/archive/2010/08/24/1807565.html
http://yangdi1984.blog.hexun.com/20238141_d.html
Oracle常用日期型函数
1。Sysdate 当前日期和时间
SQL> Select sysdate from dual;
SYSDATE
----------
21-6月 -05
2。Last_day 本月最后一天
SQL> Select last_day(sysdate) from dual;
LAST_DAY(S
----------
30-6月 -05
3。Add_months(d,n) 当前日期d后推n个月
用于从一个日期值增加或减少一些月份
date_value:=add_months(date_value,number_of_months)
SQL> Select add_months(sysdate,2) from dual;
ADD_MONTHS
----------
21-8月 -05
4。Months_between(f,s) 日期f和s间相差月数
SQL> select months_between(sysdate,to_date('2005-11-12','yyyy-mm-dd'))from dual;
MONTHS_BETWEEN(SYSDATE,TO_DATE('2005-11-12','YYYY-MM-DD'))
----------------------------------------------------------
-4.6966741
5。NEXT_DAY(d, day_of_week)
返回由"day_of_week"命名的,在变量"d"指定的日期之后的第一个工作日的日期。参数"day_of_week"必须为该星期中的某一天。
SQL> SELECT next_day(to_date('20050620','YYYYMMDD'),1) FROM dual;
NEXT_DAY(T
----------
26-6月 -05
6。current_date()返回当前会话时区中的当前日期
date_value:=current_date
SQL> column sessiontimezone for a15
SQL> select sessiontimezone,current_date from dual;
SESSIONTIMEZONE CURRENT_DA
--------------- ----------
+08:00 13-11月-03
SQL> alter session set time_zone='-11:00' 2 /
会话已更改。
SQL> select sessiontimezone,current_timestamp from dual;
SESSIONTIMEZONE CURRENT_TIMESTAMP
--------------- ------------------------------------
-11:00 12-11月-03 04.59.13.668000 下午 -11:00
7。current_timestamp()以timestamp with time zone数据类型返回当前会话时区中的当前日期
SQL> select current_timestamp from dual;
CURRENT_TIMESTAMP
---------------------------------------------------------------------------
21-6月 -05 10.13.08.220589 上午 +08:00
8。dbtimezone()返回时区
SQL> select dbtimezone from dual;
DBTIME
------
-08:00
9。extract()找出日期或间隔值的字段值
date_value:=extract(date_field from [datetime_value|interval_value])
SQL> select extract(month from sysdate) "This Month" from dual;
This Month
----------
6
SQL> select extract(year from add_months(sysdate,36)) " Years" from dual;
Years
----------
2008
10。localtimestamp()返回会话中的日期和时间
SQL> select localtimestamp from dual;
LOCALTIMESTAMP
---------------------------------------------------------------------------
21-6月 -05 10.18.15.855652 上午
常用日期数据格式
Y或YY或YYY 年的最后一位,两位或三位 Select to_char(sysdate,’YYY’) from dual; 002表示2002年
SYEAR或YEAR SYEAR使公元前的年份前加一负号 Select to_char(sysdate,’SYEAR’) from dual; -1112表示公元前111 2年
Q 季度,1~3月为第一季度 Select to_char(sysdate,’Q’) from dual; 2表示第二季度①
MM 月份数 Select to_char(sysdate,’MM’) from dual; 12表示12月
RM 月份的罗马表示 Select to_char(sysdate,’RM’) from dual; IV表示4月
Month 用9个字符长度表示的月份名 Select to_char(sysdate,’Month’) from dual; May后跟6个空格表示5月
WW 当年第几周 Select to_char(sysdate,’WW’) from dual; 24表示2002年6月13日为第24周
W 本月第几周 Select to_char(sysdate,’W’) from dual; 2002年10月1日为第1周
DDD 当年第几, 1月1日为001,2月1日为032 Select to_char(sysdate,’DDD’) from dual; 363 2002年1 2月2 9日为第363天
DD 当月第几天 Select to_char(sysdate,’DD’) from dual; 04 10月4日为第4天
D 周内第几天 Select to_char(sysdate,’D’) from dual; 5 2002年3月14日为星期一
DY 周内第几天缩写 Select to_char(sysdate,’DY’) from dual; SUN 2002年3月24日为星期天
HH或HH12 12进制小时数 Select to_char(sysdate,’HH’) from dual; 02 午夜2点过8分为02
HH24 24小时制 Select to_char(sysdate,’HH24’) from dual; 14 下午2点08分为14
MI 分钟数(0~59) Select to_char(sysdate,’MI’) from dual; 17下午4点17分
SS 秒数(0~59) Select to_char(sysdate,’SS’) from dual; 22 11点3分22秒
分享到:
相关推荐
### Oracle时间函数详解 在Oracle数据库中,时间函数是一组非常重要的工具,它们可以帮助我们处理日期和时间数据,实现各种日期计算的需求。本文将重点介绍三个实用的时间函数:`TO_NUMBER()`, `TO_CHAR()` 以及 `...
oracle 时间函数 Oracle 中的时间函数是数据库管理系统中非常重要的一部分,用于处理日期和时间相关的操作。在 Oracle 中,提供了多种时间函数,包括当前日期和时间、上月的首天、末天、本月首天、最后一天、增加...
### Oracle 时间函数详解 在 Oracle 数据库中,时间函数是一类非常重要的内置函数,用于处理日期和时间数据。本文将详细介绍几个常用的 Oracle 时间函数,并通过示例解释如何使用这些函数来获取某个月的第一天和...
### Oracle时间函数处理总结大全 Oracle数据库提供了丰富的内置函数来处理日期和时间数据。这些函数在日常开发工作中非常实用,可以高效地完成日期格式转换、日期计算等操作。本文将根据给定的内容对Oracle中常用的...
在软件开发中,尤其是涉及到时间相关的业务逻辑时,熟练掌握这些Oracle时间函数至关重要。它们可以帮助开发者精确地处理时间相关的计算,如到期日期检查、时间区间分析、时间序列数据分析等。正确使用这些函数,可以...
Oracle数据库系统中,日期函数是进行时间数据处理的关键工具,对于数据库管理员和开发人员来说,理解和熟练使用这些函数至关重要。本篇文章将全面总结Oracle中的日期函数,帮助你解决日常工作中遇到的各种日期处理...
Oracle数据库在处理日期和时间数据时提供了丰富的函数和机制,使得开发者可以轻松地进行时间的显示、转换和计算。在Oracle中,日期时间通常被表示为`DATE`类型,它包含了世纪、年、月、日、小时、分钟和秒等7个属性...
简单的oracle 时间比较函数,自己在网上找到并加以整理出来。
Oracle 日期处理函数是数据库管理系统中非常重要的一部分,最近看到有人在做 T-SQL 与 PL/SQL 的转化,问了些有关时间函数的处理。在 PL/SQL 中,Oracle 提供了其他的方法来处理日期函数,例如 DATE_ADD 函数。在 T-...
Oracle 时间函数应用指南 Oracle 时间函数是 Oracle 数据库中处理日期和时间的核心组件。时间函数可以将字符串类型转换为日期类型,也可以将日期类型转换为字符串类型。今天,我们将深入了解 Oracle 时间函数的应用...
3. 提高开发效率:递归函数可以提高开发效率,减少开发时间。 但是,递归函数也存在一些局限性,例如: 1. 性能问题:递归函数可能会导致性能问题,特别是在大规模数据集的情况下。 2. stack overflow 问题:递归...
Oracle时间函数是数据库管理系统Oracle中处理日期和时间的重要工具,其中`SYSDATE`是一个内置的函数,用于获取系统当前的日期和时间。在Oracle中,时间处理涉及到多个函数,这些函数可以帮助我们进行日期和时间的加...
3. 日期时间函数:如SYSDATE(获取当前系统日期)、ADD_MONTHS(添加月份)、EXTRACT(提取日期部分)等,便于对日期和时间进行操作。 4. 转换函数:如TO_CHAR(字符串转换为日期或数字)、TO_DATE(日期转换为字符...
Oracle 数据库中并没有直接使用 `CONVERT` 函数来处理日期和时间的方式,这个函数在 SQL Server 中被用来进行数据类型的转换,特别是日期和时间类型的转换。然而,Oracle 提供了类似的功能,如 `TO_DATE` 和 `TO_...
Oracle数据库中的函数可以分为多种类型,包括内置函数、数学函数、字符串函数、日期时间函数、转换函数、系统信息函数等。例如: 1. **内置函数**:如`SYSDATE`用于获取当前系统日期,`USER`获取当前登录用户的...