PL/SQL 日期類型

在PL/SQL中共有三個日期類型:

  • DATE: 表示日期和時間,精度爲秒級別,沒有時區信息,是Oracle中最古老和常用的日期類型
  • TIMESTAMP: 和DATE類似,但是精度可以達到納秒級別,且可以選擇包含時區信息
  • INTERVAL:與DATE和TIMESTAMP表示時間上的一點不同,INTERVAL表示時間段,可以選擇以年,月,日,秒來表示時間區別
   today_date        DATE := SYSDATE;
   today_timestamp   TIMESTAMP := SYSTIMESTAMP;
   today_timetzone   TIMESTAMP WITH TIME ZONE := SYSTIMESTAMP;
   today_local_timetzone   TIMESTAMP WITH LOCAL TIME ZONE := SYSTIMESTAMP;
   interval_year_to_month         INTERVAL YEAR (4) TO MONTH := '2017-01';
   interval_day_to_second         INTERVAL DAY (2) TO SECOND := '10 10:10:10';

#獲取當前的時間
Oracle數據庫提供了一些內置函數用於獲取當前的時間

函數 時區 返回類型
CURRENT_DATE Session DATE
CURRENT_TIMESTAMP Session TIMESTAMP WITH TIME ZONE
LOCALTIMESTAMP Session TIMESTAMP
SYSDATE Database server DATE
SYSTIMESTAMP Database server TIMESTAMP WITH TIME ZONE

#時間運算
Oracle數據庫提供了對時間進行算術運算的不同方式:

  • 將日期與一個數相加或相減, 這個操作數的單位爲天
  • 兩個日期相減,得到時間區間
  • 通過內建的日期函數進行時間運算
tomorrow DATE := SYSDATE + 1;
one_hour_ago DATE := SYSDATE - 1/24;
duration NUMBER := SYSDATE - one_hour_ago;
發佈了92 篇原創文章 · 獲贊 13 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章