`
kingmxj
  • 浏览: 185597 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle常用日期函数

阅读更多
一、 常用日期数据格式
1.Y或YY或YYY 年的最后一位,两位或三位

SQL> Select to_char(sysdate,'Y') from dual;

TO_CHAR(SYSDATE,'Y')

--------------------

7

SQL> Select to_char(sysdate,'YY') from dual;

TO_CHAR(SYSDATE,'YY')

---------------------

07

SQL> Select to_char(sysdate,'YYY') from dual;

TO_CHAR(SYSDATE,'YYY')

----------------------

007

2.Q 季度 1~3月为第一季度,2表示第二季度。

SQL> Select to_char(sysdate,'Q') from dual;

TO_CHAR(SYSDATE,'Q')

--------------------

2

3.MM 月份数

SQL> Select to_char(sysdate,'MM') from dual;

TO_CHAR(SYSDATE,'MM')

---------------------

05

4.RM 月份的罗马表示 (V在罗马数字中表示 5)

SQL> Select to_char(sysdate,'RM') from dual;

TO_CHAR(SYSDATE,'RM')

---------------------

V

5.Month 用9个字符长度表示的月份名

SQL> Select to_char(sysdate,'Month') from dual;

TO_CHAR(SYSDATE,'MONTH')

------------------------

5月

6.WW 当年第几周(2007年5月29日为2007年第22周)

SQL> Select to_char(sysdate,'WW') from dual;

TO_CHAR(SYSDATE,'WW')

---------------------

22

7.W 本月第几周 (2007年5月29日为5月第5周)

SQL> Select to_char(sysdate,'W') from dual;

TO_CHAR(SYSDATE,'W')

--------------------

5

8.DDD 当年第几天(2007年5月29日为2007年第149天)

SQL> Select to_char(sysdate,'DDD') from dual;

TO_CHAR(SYSDATE,'DDD')

----------------------

149

9. DD 当月第几天

SQL> Select to_char(sysdate,'DD') from dual;

TO_CHAR(SYSDATE,'DD')

---------------------

29

10.D 周内第几天

SQL> Select to_char(sysdate,'D') from dual;

TO_CHAR(SYSDATE,'D')

--------------------

3

11.DY 中文的星期几 ((2007年5月29日为星期二))

SQL> Select to_char(sysdate,'DY') from dual;

TO_CHAR(SYSDATE,'DY')

---------------------

星期二

12.HH或HH12 12进制小时数(16:09分为用12小时制计时为4点)

SQL> Select to_char(sysdate,'HH') from dual;

TO_CHAR(SYSDATE,'HH')

---------------------

04

13.HH24 24小时制

SQL> Select to_char(sysdate,'HH24') from dual;

TO_CHAR(SYSDATE,'HH24')

-----------------------

二、常用时间函数

1.trunc(sysdate,'Q') 本季度第一天

SQL> select trunc(sysdate,'Q') from dual;

TRUNC(SYSDATE,'Q')

------------------

2007-4-1

2.trunc(sysdate,'D') 本周的第一天(周日)

SQL> select trunc(sysdate,'D')from dual;

TRUNC(SYSDATE,'D')

------------------

2007-5-27

3.last_day(sysdate) 本月最后一天

SQL> select last_day(sysdate) from dual;

LAST_DAY(SYSDATE)

-----------------

2007-5-31 15:20:3

4.add_months(sysdate,2) 日期sysdate后推2个月


SQL> select add_months(sysdate,2) from dual;

ADD_MONTHS(SYSDATE,2)

---------------------

2007-7-29 15:21:14

5.next_day(sysdate,2) 日期sysdate之后的第一周中,第2(指定星期的第几天)是什么日期

SQL> select next_day(sysdate,2) from dual;

NEXT_DAY(SYSDATE,2)

-------------------

2007-6-4 15:22:10

6.Months_between(f,s) 日期f和s间相差月数

SQL> select months_between(sysdate,to_date('2007-04-12','yyyy-mm-dd'))from dual;

MONTHS_BETWEEN(SYSDATE,TO_DATE

------------------------------

1.56909908900836


7.得到SYSDATE+5所在的月份

SQL> SELECT to_char(SYSDATE+5,'mon','nls_date_language=american') FROM dual;

TO_CHAR(SYSDATE+5,'MON','NLS_D

------------------------------

jun

8.current_date()返回当前会话时区中的当前日期。

9.select dbtimezone from dual;

10.extract()找出日期或间隔值的字段值

SQL> select extract(month from sysdate) "This Month" from dual;

This Month

----------

5

SQL> select extract(year from sysdate) "This year" from dual;

This year

----------

2007

SQL> select extract(month from add_months(sysdate,2)) " Month" from dual;

Month

----------


三、一些实践后的用法:

1.上月末天:

select to_char(add_months(last_day(sysdate),-1),'yyyy-MM-dd') LastDay from dual;

2.上月今天

SQL> select to_char(add_months(sysdate,-1),'yyyy-MM-dd') PreToday from dual;

3.上月首天

SQL> select to_char(add_months(last_day(sysdate)+1,-2),'yyyy-MM-dd') firstDay from dual;

4.要找到某月中所有周五的具体日期

SELECT to_char(b.a,'YY-MM-DD')

FROM ( SELECT trunc(SYSDATE,'mm')+ROWNUM-1 a

FROM dba_objects where rownum < 32 ) b

WHERE to_char(b.a,'day')='星期五';


如果把where to_char(t.d, 'MM') = to_char(sysdate, 'MM')改成sysdate-90,即为查找当前月份的前三个月中

的每周五的日期。


5.得到系统当前月及以后的日期

select trunc(sysdate, 'MM')+ROWNUM-1 FROM dba_objects ;

-----------------------------------

to_date 字符串类型转为换日期类型

字符串中的相应位置上的字符,必须符合时间范围的限制 

14.MI 分钟数(0~59)

提示注意不要将MM格式用于分钟(分钟应该使用MI)。MM是用于月份的格式,将它用于分钟也能工作,但结果是错误的。



to_date('2007-12-14 09:28:42', 'yyyy-mm-dd hh24:mi:ss')
分享到:
评论

相关推荐

    ORACLE常用日期函数集合

    ### ORACLE常用日期函数集合详解 #### 一、概述 在Oracle数据库中,日期处理是一项非常重要的功能。本文将详细介绍一些常用的Oracle日期函数及其应用场景,帮助数据库管理员或开发者更好地理解和运用这些函数,以...

    Oracle常用日期型函数

    Oracle常用日期型函数,大家经常想用的,又不想记得。现在,给你一个方便的资源

    hive和oracle常用函数对照表.xlsx

    hive和oracle常用函数对照,包含常用的函数分类 字符函数 数值函数 日期函数 聚合函数 转换函数 其他 增加的hive函数对比,只需要2个积分喔

    Oracle常用单行函数

    本文主要介绍Oracle中的字符函数、数学函数、日期函数以及转换函数。 首先,让我们详细探讨字符函数。字符函数主要用于处理字符串数据,包括: 1. `lower(char)`:将字符串中的所有字符转换为小写字母。 2. `upper...

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

    在日常的数据操作和分析中,掌握一些常用的Oracle函数和方法是至关重要的。以下是对"Oracle最常用的函数或方法总结"的详细阐述: 1. **字符串处理函数** - `CONCAT()`:用于连接两个或多个字符串。 - `SUBSTR()`...

    Oracle 日期函数的用法与解析

    涉及Oracle常用日期函数的用法、解析以及相关实例

    Oracle常用日期型函数详解

    Oracle常用日期型函数详解 1、Sysdate 当前日期和时间 Select sysdate from dual; SYSDATE ---------- 21-6月 -05 2、Last_day 本月最后一天 Select last_day(sysdate) from dual; LAST_DAY(S ---------- 30-6...

    Oracle常用函数大全

    Oracle常用函数大全是一个非常重要的知识点,涵盖了许多实用的函数,例如日期函数、字符串函数、聚合函数等。这些函数可以帮助开发者更方便地进行数据库操作和数据分析。本文将详细介绍Oracle常用函数大全中的一些...

    Oracle常用的函数大全详细介绍

    在初学者的旅程中,掌握Oracle常用函数是至关重要的一步。以下是对Oracle数据库中几个核心函数的详细介绍: 1. **DECODE函数**:DECODE函数在查询中用于条件判断和返回值替换。其基本语法为`DECODE(expression, ...

    Oracle日期函数练习

    Oracle 日期函数是 Oracle 数据库中的一组功能强大且广泛使用的函数,它们可以对日期进行各种操作和计算,本次练习涵盖了 Oracle 中常用的日期函数,包括获取当前系统时间、对日期的月进行加减、获取给定日期所在月...

    oracle各种日期函数

    在Oracle数据库中,日期函数是处理日期和时间数据的关键工具之一。这些函数广泛应用于查询、报表生成以及其他需要处理日期和时间的应用场景。根据题目提供的信息,“oracle各种日期函数”主要涉及如何获取当前的年份...

    oracle常用字符函数

    Oracle数据库系统提供了丰富的函数库,包括字符函数、日期函数、数据类型转换函数以及集合函数,以帮助用户在处理数据时实现各种复杂的操作。下面将详细解释这些函数的用途和使用方法。 1. **字符函数** - `LOWER...

    oracle 的常用函数

    ### 三、日期函数 #### 3.1 `SYSDATE` 返回当前系统日期时间。 - **语法**: - `SYSDATE` - **示例**: - `SELECT SYSDATE FROM dual;` 返回当前系统日期时间 #### 3.2 `ADD_MONTHS` 用于计算指定月份后的日期。...

    oracle常用函数介绍

    在本篇文章中,我们将深入探讨Oracle中的常用函数,这些函数对于日常的SQL查询、数据处理以及数据库管理至关重要。 一、数值函数 1. `ABS()`: 计算并返回一个数的绝对值。例如,`ABS(-5)` 返回 5。 2. `MOD()`: ...

    oracle常用函数chm版

    "Oracle常用函数chm版"是一个集合了多种Oracle数据库常用函数的参考资源,主要包含以下几个方面: 1. **数值型函数**:这类函数主要用于处理整数、浮点数等数值类型的数据。例如,`ROUND`函数用于四舍五入,`TRUNC`...

    Oracle常用函数.pdf

    ### Oracle常用函数详解 #### 一、概述 Oracle 数据库提供了丰富的内置函数,极大地提高了 SQL 语句在处理数据时的灵活性与效率。这些函数主要分为两大类:单行函数和多行函数(也称为聚合函数)。单行函数通常...

    oracle常用函数汇总大全

    Oracle 常用函数汇总大全 Oracle 是一个功能强大且广泛使用的关系数据库管理系统,提供了许多有用的函数来帮助开发者快速实现各种数据操作。下面是 Oracle 中一些常用的函数的汇总。 运算符 Oracle 中有多种...

    ORACLE常用数值函数、转换函数、字符串函数介绍

    Oracle的函数库还包括日期函数、条件函数、数学函数等,它们共同构成了强大的数据库操作工具集。不过,由于篇幅限制,这里只列举了部分常用的函数,如需了解更多,建议查阅官方文档,以获取最全面的信息。在实践中,...

Global site tag (gtag.js) - Google Analytics