DB2 提供豐富的標量函數從日期、時間、時間戳或字串中擷取特定成分。所有函數皆接受 DATE、TIMESTAMP、字串格式的日期/時間輸入。
| 函數 | 語法 | 回傳值 | 範例 |
|---|---|---|---|
| DATE | DATE(expr) | 日期部分 (YYYY-MM-DD) | SELECT DATE('2005-06-12 16.24.18.121212') FROM TEST → 2005-06-12 |
| TIME | TIME(expr) | 時間部分 (HH.MM.SS) | SELECT TIME('2005-06-12 16.24.18.121212') FROM TEST → 16.24.18 |
| TIMESTAMP | TIMESTAMP(expr1[, expr2]) | 時間戳 | 單參數:時間戳字串 → TIMESTAMP;雙參數:日期 + 時間 → TIMESTAMP |
| YEAR | YEAR(expr) | 年份 (整數) | SELECT YEAR('2005-06-12') FROM TEST → 2005 |
| MONTH | MONTH(expr) | 月份 (1-12) | SELECT MONTH('2005-06-12') FROM TEST → 6 |
| QUARTER | QUARTER(expr) | 季度 (1-4) | SELECT QUARTER(CURRENT DATE) FROM TEST |
| WEEK | WEEK(expr) | 週次 (1-53/54) | SELECT WEEK(CURRENT DATE) FROM TEST |
| DAY | DAY(expr) | 日期 (1-31) | SELECT DAY(CURRENT DATE) FROM TEST |
| HOUR | HOUR(expr) | 小時 (0-23) | SELECT HOUR(CURRENT TIMESTAMP) FROM TEST |
CURRENT DATE、CURRENT TIME、CURRENT TIMESTAMP 為特殊暫存器,可直接作為參數。