知识大全 在Oracle中实现各种日期处理完全版

Posted

篇首语:业精于勤而荒于嬉,行成于思而毁于随本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 在Oracle中实现各种日期处理完全版相关的知识,希望对你有一定的参考价值。

在Oracle中实现各种日期处理完全版  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  TO_DATE格式     Day:       dd    number         dy    abbreviated  fri         day   spelled out  friday                 ddspth  spelled out   ordinal  elfth     Month:      mm    number         mon   abbreviated  mar     month  spelled out  march      Year:                  yy    o digits       yyyy   four digits             小时格式下时间范围为 : : : :     小时格式下时间范围为 : : : :           日期和字符转换函数用法(to_date to_char)              select to_char( to_date( J ) Jsp ) from dual         显示Two Hundred Twenty Two           求某天是星期几     select to_char(to_date( yyyy mm dd ) day ) from dual;     星期一     select to_char(to_date( yyyy mm dd ) day NLS_DATE_LANGUAGE = American ) from dual;     monday      设置日期语言     ALTER SESSION SET NLS_DATE_LANGUAGE= AMERICAN ;     也可以这样     TO_DATE ( YYYY mm dd NLS_DATE_LANGUAGE = American )           两个日期间的天数     select floor(sysdate to_date( yyyymmdd )) from dual;          时间为null的用法     select id active_date from table      UNION     select TO_DATE(null) from dual;         注意要用TO_DATE(null)             a_date beeen to_date( yyyymmdd ) and to_date( yyyymmdd )     那么 月 号中午 点之后和 月 号的 点之前是不包含在这个范围之内的     所以 当时间需要精确的时候 觉得to_char还是必要的       日期格式冲突问题        输入的格式要看你安装的ORACLE字符集的类型 比如: US ASCII date格式的类型就是: Jan     alter system set NLS_DATE_LANGUAGE = American        alter session set NLS_DATE_LANGUAGE = American     或者在to_date中写     select to_char(to_date( yyyy mm dd ) day NLS_DATE_LANGUAGE = American ) from dual;     注意我这只是举了NLS_DATE_LANGUAGE 当然还有很多     可查看     select * from nls_session_parameters     select * from V$NLS_PARAMETERS         日期和字符转换函数用法(to_date to_char)       We overwrite NLS_DATE_FORMAT into different formats for the session         SQL> alter session set nls_date_format = DD MON RR ; Session altered        SQL> set pagesize      SQL> set linesize      SQL> select * from nls_session_parameters;      NLS_LANGUAGE          AMERICAN     NLS_TERRITORY         AMERICA     NLS_CURRENCY          $     NLS_ISO_CURRENCY        AMERICA     NLS_NUMERIC_CHARACTERS          NLS_CALENDAR          GREGORIAN     NLS_DATE_FORMAT        DD MON RR     NLS_DATE_LANGUAGE       AMERICAN     NLS_SORT            BINARY     NLS_TIME_FORMAT        HH MI SSXFF AM     NLS_TIMESTAMP_FORMAT      DD MON RR HH MI SSXFF AM     NLS_TIME_TZ_FORMAT       HH MI SSXFF AM TZH:TZM     NLS_TIMESTAMP_TZ_FORMAT    DD MON RR HH MI SSXFF AM TZH:TZM     NLS_DUAL_CURRENCY       $     NLS_P            BINARY       rows selected        specify it in SQL statement:              SQL> select to_date( SEP DD MON YYYY ) from dual;        SEP       SQL> alter session set nls_date_format = MM DD YYYY ;          Session altered                SQL> select to_date( SEP DD MON YY ) from dual;          TO_DATE(                          SQL> alter session set nls_date_format = RRRR MM DD ;          Session altered                 SQL> select to_date( SEP DD MON YYYY ) from dual;          TO_DATE(                                 When we use TO_CHAR function we get expected results of format from current SQL statement:       SQL> alter session set nls_date_format = MM DD YY ;         Session altered        SQL> select to_char(sysdate dd mm yyyy ) from dual;         TO_CHAR(SYSDATE DD MM YYYY )                 SQL> alter session set nls_date_format = RR MON DD ;          Session altered        SQL> select to_char(sysdate dd mon yy ) from dual;          TO_CHAR(SYSDATE DD MON YY )          sep        SQL> select to_char(sysdate dd Mon yy ) from dual;          TO_CHAR(SYSDATE DD MON YY )          Sep        select count(*)     from ( select rownum rnum        from all_objects        where rownum <= to_date( yyyy mm dd ) to_date(         yyyy mm dd )+         )     where to_char( to_date( yyyy mm dd )+rnum D )     not     in ( )         查找 至 间除星期一和七的天数     在前后分别调用DBMS_UTILITY GET_TIME 让后将结果相减(得到的是 / 秒 而不是毫秒)             select months_beeen(to_date( MM DD YYYY )       to_date( MM DD YYYY )) MONTHS FROM DUAL;             select months_beeen(to_date( MM DD YYYY )         to_date( MM DD YYYY )) MONTHS FROM DUAL;               Next_day的用法     Next_day(date day)         Monday Sunday for format code DAY        Mon Sun for format code DY         for format code D               select to_char(sysdate hh:mi:ss ) TIME from all_objects     注意 第一条记录的TIME 与最后一行是一样的     可以建立一个函数来处理这个问题     create or replace function sys_date return date is     begin     return sysdate;     end;         select to_char(sys_date hh:mi:ss ) from all_objects;           获得小时数               SELECT EXTRACT(HOUR FROM TIMESTAMP : : ) from offer        SQL>  select sysdate to_char(sysdate hh ) from dual;               SYSDATE       TO_CHAR(SYSDATE HH )               : :                 SQL>  select sysdate to_char(sysdate hh ) from dual;               SYSDATE       TO_CHAR(SYSDATE HH )               : :                 获取年月日与此类似        年月日的处理     select older_date         newer_date         years         months         abs(          trunc(            newer_date              add_months( older_date years* +months )             )          ) days      from ( select        trunc(months_beeen( newer_date older_date )/ ) YEARS       mod(tr cha138/Article/program/Oracle/201311/17738

相关参考

知识大全 RHEL3上安装Oracle9.2.0 完全版

RHEL3上安装Oracle9.2.0完全版  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  安装

知识大全 Oracle中一个日期查找的误区

Oracle中一个日期查找的误区  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nbs

知识大全 Oracle中日期时间的操作比较和加减

Oracle中日期时间的操作比较和加减  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Oracl

知识大全 oracle带时分秒日期的比较

  oracle中不带时分秒的字符串to_date转换时间后与带时分秒的date型字段做带等值的比较(>=<==)时由于字符串不带时分秒所以转换后时分秒默认为::oracle中比较date

知识大全 oracle日期操作方法

  在oracle中有很多关于日期的函数如:  add_months()用于从一个日期值增加或减少一些月份  date_value:=add_months(date_valuenumber_of_mo

知识大全 Oracle日期时间函数的应用

Oracle日期时间函数的应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  转换函数  与da

知识大全 从Unix到Oracle的日期转换

从Unix到Oracle的日期转换  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  CREATEO

知识大全 oracle日期时间模糊查询的方法

  思路是先将oracle中时间字段转化成字段串然后与字符串模糊查询  如下  StringstrSQLSearch=SELECT*FROM+objConfigDBgetTableName()+WHE

知识大全 如何使用归档日志进行完全恢复

  系统环境  操作系统WindowsServer机器内存M  数据库 OracleiR()forNT企业版  安装路径C:\\ORACLE    模拟现象      先将数据库设置为归档模式    

知识大全 Oracle基本数据类型存储格式浅析—日期类型(1)

Oracle基本数据类型存储格式浅析—日期类型(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!