首页 > 数据库 > Oracle > oracle日期函数(1)
trunc(sysdate,'Q') --本季度第一天
trunc(sysdate,'D') --本周的第一天(周日)
查询Oracle日期格式
----------------------------------
select * from nls_database_parameters;
得到结果如下表: 表中NLS_DATE_FORMAT表示日期格式.
PARAMETER VALUE
----------------------------------- -----------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET ZHS16GBK
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_COMP BINARY
NLS_NCHAR_CHARACTERSET ZHS16GBK
NLS_RDBMS_VERSION 8.1.7.0.0
或者查询V$NLS_PARAMETERS表,
select * from V$NLS_PARAMETERS;
也有类似结果.
to_date 字符串类型转为换日期类型
字符串中的相应位置上的字符,必须符合时间范围的限制
SQL>select to_date('2004-11-12 12-07-32','yyyy-mm-dd hh24-mi-ss') value from dual;
VALUE
-------------------
2004.11.12 12:07:32
SQL>select to_date('20041015') value from dual;
VALUE
-------------------
2004.10.15 00:00:00
SQL>select to_date('20041315') value from dual;
ERROR 位于第 1 行:
ORA-01861: 文字与格式字符串不匹配
sysdate 当前日期和时间
SQL>select sysdate value from dual;
VALUE
-------------------
2003.11.23 17:09:01
last_day 本月最后一天
SQL>select last_day(sysdate) value from dual;
VALUE
-------------------
2003.11.30 17:08:17
add_months(d,n) 日期d后推n个月
SQL>select add_months(sysdate,2) value from dual;
VALUE
-------------------
2005.01.23 17:10:21
next_day(d,day) 日期d之后的第一周中,指定的那天(指定星期的第几天)是什么日期
SQL>select next_day(sysdate,1) value from dual;
VALUE
-------------------
2004.11.28 17:38:55
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/18921899/viewspace-1017434/ ,如需转载,请注明出处,否则将追究法律责任。