

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 日期時間函數
<a name="sql-functions-date"></a>

 日期時間函數適用於日期和時間。這些函數允許擷取日期的特定元件、執行計算和操作日期值。

這些函數中允許的識別符包括：
+ YEAR
+ MONTH
+ DAY
+ HOUR
+ MINUTE
+ SECOND


|  **函數**  |  **Signature**  |  **Description**  | 
| --- | --- | --- | 
| `NOW` |  現在 ( )  | 以毫秒精確度傳回目前的時間戳記。它提供在查詢中執行的確切時間。 | 
| `DATE_ADD` | DATE\_ADD （識別符、 interval\_duration、資料欄） | 傳回日期/時間和天數/小時的總和，或日期/時間和日期/時間間隔的總和。 | 
| `DATE_SUB` | DATE\_SUB （識別符、 interval\_duration、資料欄） | 傳回日期/時間和天數/小時之間的差異，或日期/時間和日期/時間間隔之間的差異。 | 
| `TIMESTAMP_ADD` | TIMESTAMP\_ADD （識別符、 interval\_duration、資料欄） | 將指定時間單位的時間間隔新增至日期時間表達式。 | 
| `TIMESTAMP_SUB` | TIMESTAMP\_SUB （識別符、 interval\_duration、資料欄） | 從日期時間表達式減去指定時間單位的時間間隔。 | 
| `CAST` | CAST （表達式 AS TIMESTAMP FORMAT 模式） | 使用指定的格式模式，將字串表達式轉換為時間戳記。標準日期時間格式`'yyyy-MM-dd HH:mm:ss'`的常見模式包括 。例如 `SELECT CAST('2023-12-25 14:30:00' AS TIMESTAMP) AS converted_timestamp` | 

**Example 使用所列函數的 SQL 查詢：**  

```
SELECT r.asset_id, r.int_value,
  date_add(DAY, 7, r.event_timestamp) AS date_in_future,
  date_sub(YEAR, 2, r.event_timestamp) AS date_in_past,
  timestamp_add(DAY, 2, r.event_timestamp) AS timestamp_in_future,
  timestamp_sub(DAY, 2, r.event_timestamp) AS timestamp_in_past,
  now() AS time_now
FROM raw_time_series AS r
```