首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

DB2 獲取當前時間完整指南:日期、時間與時間戳記的實用語法

     編輯:DB2 教學

核心語法一覽

在 DB2 資料庫日常操作中,獲取系統當前時間是最基礎也最常用的需求。DB2 提供了三個特殊暫存器,分別對應日期、時間與完整時間戳記,搭配 SYSIBM.SYSDUMMY1 這張內建單列虛擬表,即可直接查詢,無需存取實體資料表。

1. 取得當前日期 (年月日)

SELECT CURRENT DATE FROM SYSIBM.SYSDUMMY1;

回傳格式為 YYYY-MM-DD,適合用於報表抬頭、歸檔命名或日期篩選條件。

2. 取得當前時間 (時分秒)

SELECT CURRENT TIME FROM SYSIBM.SYSDUMMY1;

回傳格式為 HH:MM:SS,常用於記錄交易發生的精確時間點。

3. 取得完整時間戳記 (年月日時分秒.微秒)

SELECT CURRENT TIMESTAMP FROM SYSIBM.SYSDUMMY1;

回傳格式為 YYYY-MM-DD-HH.MM.SS.ffffff,精度達微秒,是審計追蹤、並發控制與唯一鍵值生成的首選。

進階應用技巧

  • 時區處理:DB2 依伺服器作業系統時區回傳值;若應用需跨時區,建議在應用層轉換或使用 CURRENT TIMESTAMP WITH TIME ZONE (DB2 11.5+ 支援)。
  • 日期運算:可直接進行加減運算,例如 CURRENT DATE + 7 DAYS 取得一週後日期。
  • 格式化輸出:搭配 VARCHAR_FORMAT() 或 TO_CHAR() 可輸出自訂格式,如 VARCHAR_FORMAT(CURRENT TIMESTAMP, 'YYYYMMDDHH24MISS')。

常見誤區與注意事項

請勿混淆 CURRENT DATE/TIME/TIMESTAMP (特殊暫存器,語句執行期間固定) 與 NOW() (函式,每次呼叫可能不同),後者在 DB2 中並非標準語法,移植性較差。

DB2 獲取當前時間語法示意圖

掌握這三個特殊暫存器,即能輕鬆應對 DB2 開發中 90% 以上的時間獲取場景,建議收藏備查。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved