SQL記錄-PLSQL日期與時間

來源:互聯網
上載者:User

標籤:har   between   精確   欄位名   tty   字串   字元   val   資訊   

PL/SQL日期及時間

PL/SQL提供兩個日期和時間相關的資料類型:

  • 日期時間(Datetime)資料類型

  • 間隔資料類型

datetime資料類型有:

  • DATE

  • TIMESTAMP

  • TIMESTAMP WITH TIME ZONE

  • TIMESTAMP WITH LOCAL TIME ZONE

間隔資料類型是:

  • INTERVAL YEAR TO MONTH

  • INTERVAL DAY TO SECOND

日期時間欄位值和間隔資料類型

這兩個日期時間和間隔資料類型包括欄位。這些欄位的值確定的資料類型的值。下表列出了時間和間隔的欄位及其可能的值。

欄位名稱 有效日期時間值 有效間隔值
YEAR -4712 to 9999 (除外0年) 任何非0整數
MONTH 01 - 12 0 - 11
DAY 01 - 31 (受MONTH和YEAR的數值,按日曆的地區設定的規則) 任何非0整數
HOUR 00 - 23 0 - 23
MINUTE 00 - 59 0 - 59
SECOND 00 to 59.9(n), 其中,9(n)是時間小數秒精度
在9(n)的部分是不適用DATE。
0 to 59.9(n), 其中,9(n)是區間小數秒精度
TIMEZONE_HOUR -12 - 14 (適應範圍夏令時更改)
DATE 或 TIMESTAMP不適用.
不適用
TIMEZONE_MINUTE 00 - 59
DATE 或 TIMESTAMP不適用.
不適用
TIMEZONE_REGION DATE 或 TIMESTAMP不適用. 不適用
TIMEZONE_ABBR DATE 或 TIMESTAMP不適用. 不適用
日期時間資料類型和函數

下面是日期時間資料類型:

  • DATE - 它儲存在字元和數字資料類型的日期和時間資訊。它是由上世紀,年,月,日,時,分,秒的資訊。它被指定為:

  • TIMESTAMP - 它是日期資料類型的擴充。它的年,月,日的日期資料類型的儲存,以及小時,分鐘和秒值。它是用於儲存精確的時間值有用。

  • TIMESTAMP WITH TIME ZONE - 它是時間戳記的變體,其中包括一個時區地區名稱或時區中它的值位移。時區位移量是本地的時間和UTC之間的差值(以小時和分鐘)。此資料類型是用於收集和計算跨越地理地區的最新資訊有用。

  • TIMESTAMP WITH LOCAL TIME ZONE - 它是時間戳記(TIMESTAMP )的另一種變型,其中包括一個時區中它的值位移。

下表列出了日期時間函數(其中,x有日期時間值):

S.N 函數名稱 & 描述
1 ADD_MONTHS(x, y);
增加y個月到x
2 LAST_DAY(x);
返回該月的最後一天
3 MONTHS_BETWEEN(x, y);
返回x和y之間的月數
4 NEXT_DAY(x, day);
返回x後第二天的日期時間
5 NEW_TIME;
返回從由使用者指定的一個時區的時間/天的值
6 ROUND(x [, unit]);
x舍入;
7 SYSDATE();
返回當前日期時間。
8 TRUNC(x [, unit]);
截斷x

時間戳記函數(其中,x是一個時間戳記值):

S.N 函數名稱 & 描述
1 CURRENT_TIMESTAMP();
返回包含當前會話時間以及會話時區的時區中的時間戳記( TIMESTAMP WITH TIME ZONE)
2 EXTRACT({ YEAR | MONTH | DAY | HOUR | MINUTE | SECOND } | { TIMEZONE_HOUR | TIMEZONE_MINUTE } | { TIMEZONE_REGION | } TIMEZONE_ABBR ) FROM x)
從x提取並返回年,月,日,時,分,秒,或時間;
3 FROM_TZ(x, time_zone);
通過TIME_ZONE指定WITH TIMEZONE一個TIMESTAMP時間戳記x和時區轉換
4 LOCALTIMESTAMP();
返回包含在會話時區的本地時間時間戳記
5 SYSTIMESTAMP();
返回含有當前資料庫的時間以及資料庫時區的時區中的時間戳記(TIMESTAMP WITH TIME ZONE)
6 SYS_EXTRACT_UTC(x);
WITH TIMEZONE X的TIMESTAMP轉換為包含日期和時間UTC時間戳記
7 TO_TIMESTAMP(x, [format]);
將字串x轉換為一個TIMESTAMP
8 TO_TIMESTAMP_TZ(x, [format]);
字串x轉換到WITH TIMEZONE時間戳記
樣本:

下面的程式碼片段示出了使用上述函數功能:

SELECT SYSDATE FROM DUAL;

輸出:

08/31/2014 5:25:34 PM
SELECT TO_CHAR(CURRENT_DATE, ‘DD-MM-YYYY HH:MI:SS‘) FROM DUAL;

輸出:

31-08-2014 05:26:14
SELECT ADD_MONTHS(SYSDATE, 5) FROM DUAL;

輸出:

01/31/2014 5:26:31 PM
SELECT LOCALTIMESTAMP FROM DUAL;

輸出:

8/31/2014 5:26:55.347000 PM
間隔資料類型和函數

以下是間隔資料類型:

  • INTERVAL YEAR TO MONTH - 它儲存了一段時間的使用年份和月份日期時間欄位

  • INTERVAL DAY TO SECOND - 它儲存了一段時間中的天,小時,分鐘和秒

間隔函數:

S.N 函數名稱 & 描述
1 NUMTODSINTERVAL(x, interval_unit);
整數x轉換為一個間隔(DAY TO SECOND)
2 NUMTOYMINTERVAL(x, interval_unit);
x到時間間隔(YEAR TO MONTH)數的轉換
3 TO_DSINTERVAL(x);
將字串x時間間隔(DAY TO SECOND)到秒轉換
4 TO_YMINTERVAL(x);
將字串x時間間隔(YEAR TO MONTH)轉換為整數

SQL記錄-PLSQL日期與時間

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.