說明:用於從乙個日期值增加或減少一些月份
,d代表乙個日期
,n為正數則代表在d日期
上增加n
月份,n
為負數則代表在
d日期上減少n月
例:select add_months(sysdate,12) "next year" from dual;
2
、current_date()
說明:返回當前會話時區中的當前日期時間
alter session set time_zone=』-11:00』(
更改當前會話時區命令) 例
:select sessiontimezone,current_date from dual;
3
、dbtimezone()
說明:返回資料庫例項時區
select dbtimezone from dual;
4
、extract()
說明:顯示指定格式的日期值。
select extract(month from sysdate) "this month" from dual;
select extract(year from add_months(sysdate,36)) "3 years out" from dual;
5
、last_day()
說明:返回包含了日期引數的月份的最後一天的日期
select last_day(sysdate) "last" from dual;
6
、months_between(d1,d2)
說明:返回
d1和d2兩個月份之間相差的月數,若
d1返回負數;
d1>d2
,返回正數;若d1和
d2都是月底或者天數相同,則返回整數,否則以每月
31天為基準數返回小數。
select months_between(to_date('2007-01-31','yyyy-mm-dd'),to_date('2006-11-30','yyyy-mm-dd')) from dual;
7
、next_day(d,varchar2)
說明:返回日期
d指定的在日期
d之後的第乙個工作日;
select
next_day(sysdate,'
星期四'
) from dual;
select next_day(sysdate,』monday』) from dual;
錯誤,不能使用英文單詞
返回當前日期後的第乙個星期四的日期。若當前日期已經是星期四或過了星期四,則返回下週的星期四對應的日期,否則返回本週星期四的日期。
注意:varchar2
指定工作日的時候和當前資料庫例項的引數設定有關,字串需要用中文寫,如果中文不行,就使用英文星期代表。
說明:返回日期時間的四捨五入結果。如果
fmt指定年,則以7月
1日為分界;如果指定月,則以
16日為分界;關於按天來四捨五入,在測試時無法理解
(資料上解釋按天的時候是以中午12:
00為分界)
select round(sysdate,』month』) from dual;
說明:按照指定的格式截斷日期,如果指定格式為年,則結果為本年1月
1日,如果格式指定為月,則結果為本月
1日,關於格式指定為天還未理解。
select
trunc(sysdate,'month') from dual;
略。
ORACLE 日期函式
1.select to char to date 2011 5 1 yyyy mm dd day from dual 返回星期日 select to char to date 2011 5 1 yyyy mm dd day nls date language american from dual 返...
oracle日期函式
oracle取上週一到週末日期的查詢語句 oracle 取上週一到週末的sql 這樣取的是 在一周內第幾天,是以週日為開始的 selectto char to date 20130906 yyyymmdd d fromdual 結果 6 注釋 2013.09.06是周五,為本週的第六天 select...
Oracle日期函式
select sysdate from dual 從偽表查系統時間,以預設格式輸出。sysdate 5 24 60 60 在系統時間基礎上延遲5秒 sysdate 5 24 60 在系統時間基礎上延遲5分鐘 sysdate 5 24 在系統時間基礎上延遲5小時 sysdate 5 在系統時間基礎上延...