幾個SQL 日期處理函式
ADD_MONTHS(d,n)
--時間點d再加上n個月
----for example
select sysdate, add_months(sysdate,2) aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 21-NOV-07
LAST_DAY(d)
--時間點d當月份最後一天
----for example
select sysdate, LAST_DAY(sysdate) LAST_DAY from dual;
SYSDATE LAST_DAY
---------- ---------
21-SEP-07 30-SEP-07
NEXT_DAY(d,number)
--◎ 時間點d開始,下一個星期幾的日期
--◎ 星期日 = 1 SUN or 星期一 = 2 MON 星期二 = 3 |WEN
-- 星期三 = 4 星期四 = 5 星期五 = 6 星期六 = 7
----for example
select sysdate, NEXT_DAY(sysdate,2) aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 24-SEP-07
MONTHS_BETWEEN(d1,d2)
--計算d1與d2相隔的月數
----for example
select trunc(MONTHS_BETWEEN(to_date('20071101','yyyymmdd'),
to_date('20070820','yyyymmdd'))) aa
from dual;
AA
----------
2
NEW_TIME(d,c1,c2)
--轉換新時區
----for example
select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS') 臺北,
to_char(NEW_TIME(sysdate,'EST','GMT'),'YYYY/MM/DD HH24:MI:SS') 格林威治
from dual;
臺北 格林威治
-------------------- -------------------
2007/09/21 14:36:53 2007/09/21 19:36:53
ROUND(d[,fmt])
--◎ 對日期作四捨五入運算
--◎ 月的四捨五入以每月的15號為基準
--◎ 年的四捨五入以每年6月為基準
----for example
select sysdate, ROUND(sysdate,'year') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-JAN-08
select sysdate, ROUND(sysdate,'month') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-OCT-07
TRUNC(d[,fmt])
--對日期作擷取運算
----for example
select sysdate, TRUNC(sysdate,'year') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-JAN-07
select sysdate, TRUNC(sysdate,'month') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-SEP-07
--時間點d再加上n個月
----for example
select sysdate, add_months(sysdate,2) aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 21-NOV-07
LAST_DAY(d)
--時間點d當月份最後一天
----for example
select sysdate, LAST_DAY(sysdate) LAST_DAY from dual;
SYSDATE LAST_DAY
---------- ---------
21-SEP-07 30-SEP-07
NEXT_DAY(d,number)
--◎ 時間點d開始,下一個星期幾的日期
--◎ 星期日 = 1 SUN or 星期一 = 2 MON 星期二 = 3 |WEN
-- 星期三 = 4 星期四 = 5 星期五 = 6 星期六 = 7
----for example
select sysdate, NEXT_DAY(sysdate,2) aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 24-SEP-07
MONTHS_BETWEEN(d1,d2)
--計算d1與d2相隔的月數
----for example
select trunc(MONTHS_BETWEEN(to_date('20071101','yyyymmdd'),
to_date('20070820','yyyymmdd'))) aa
from dual;
AA
----------
2
NEW_TIME(d,c1,c2)
--轉換新時區
----for example
select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS') 臺北,
to_char(NEW_TIME(sysdate,'EST','GMT'),'YYYY/MM/DD HH24:MI:SS') 格林威治
from dual;
臺北 格林威治
-------------------- -------------------
2007/09/21 14:36:53 2007/09/21 19:36:53
ROUND(d[,fmt])
--◎ 對日期作四捨五入運算
--◎ 月的四捨五入以每月的15號為基準
--◎ 年的四捨五入以每年6月為基準
----for example
select sysdate, ROUND(sysdate,'year') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-JAN-08
select sysdate, ROUND(sysdate,'month') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-OCT-07
TRUNC(d[,fmt])
--對日期作擷取運算
----for example
select sysdate, TRUNC(sysdate,'year') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-JAN-07
select sysdate, TRUNC(sysdate,'month') aa from dual;
SYSDATE AA
---------- ----------
21-SEP-07 01-SEP-07
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21754115/viewspace-1219091/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Clickhouse SQL日期處理函式及案例分享SQL函式
- sql 日期函式SQL函式
- SQL函式之日期函式SQL函式
- SQL字串處理函式大全SQL字串函式
- MySQL-日期和資料處理函式MySql函式
- Sql Server 日期函式SQLServer函式
- Notes中幾個處理多值域的通用函式函式
- SQL Server字串處理函式大全SQLServer字串函式
- SQL 日期格式相關函式SQL函式
- Oracle 中的 TO_DATE 和 TO_CHAR 函式 日期處理Oracle函式
- SQL 10 函式 3 日期時間函式 - 5 計算日期差額SQL函式
- sql server對於日期的處理SQLServer
- SQL SERVER 時間和日期函式SQLServer函式
- SQL中的常用的字串處理函式大全SQL字串函式
- Sql Server函式全解(4):日期和時間函式SQLServer函式
- Sql Server函式全解(四)日期和時間函式SQLServer函式
- 磁碟處理函式函式
- 字元處理函式字元函式
- Sql Server系列:日期和時間函式SQLServer函式
- oracle函式大全-字串處理函式Oracle函式字串
- oracle幾個函式Oracle函式
- 5 個處理狀態列的函式函式
- jquery註冊事件處理函式常用的幾種方式jQuery事件函式
- 日期函式函式
- 陣列處理函式陣列函式
- SqlServer——字串處理函式SQLServer字串函式
- Oracle函式-->字元處理Oracle函式字元
- 安全字串處理函式字串函式
- 檔案處理函式函式
- 時間處理函式函式
- SQL Server 裡的日期和時間函式SQLServer函式
- [php]幾個常用函式PHP函式
- 水庫斷面水位中--水勢顯示效果處理--日期處理 SQLSQL
- Scala日期處理
- JavaUtils - 日期處理Java
- java(日期處理)Java
- Hive 日期處理Hive
- SQL的基本命令和幾個常用函式彙總SQL函式