

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

# Amazon QLDB 中的 DATE\$1DIFF 函數
<a name="ql-functions.date_diff"></a>

**重要**  
支援終止通知：現有客戶將可以使用 Amazon QLDB，直到 07/31/2025 的支援結束為止。如需詳細資訊，請參閱[將 Amazon QLDB Ledger 遷移至 Amazon Aurora PostgreSQL](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)。

在 Amazon QLDB 中，使用 `DATE_DIFF`函數傳回兩個指定時間戳記的指定日期部分之間的差異。

## 語法
<a name="ql-functions.date_diff.syntax"></a>

```
DATE_DIFF( datetimepart, timestamp1, timestamp2 )
```

## 引數
<a name="ql-functions.date_diff.arguments"></a>

*datetimepart*  
函數操作的日期或時間部分。此參數可為下列其中一個值：  
+ `year`
+ `month`
+ `day`
+ `hour`
+ `minute`
+ `second`

*時間戳記1*，*時間戳記2*  
`timestamp` 函數比較的兩個欄位名稱或資料類型表達式。如果*時間戳記 2* 晚於*時間戳記 1*，則結果為正值。如果*時間戳記 2* 早於*時間戳記 1*，則結果為負。  
Ion 時間戳記常值可以用反引號 () 表示``...``。如需時間戳記值的格式詳細資訊和範例，請參閱 Amazon Ion 規格文件中的[時間戳記](https://amzn.github.io/ion-docs/docs/spec.html#timestamp)。

## 傳回類型
<a name="ql-functions.date_diff.return-type"></a>

`int`

## 範例
<a name="ql-functions.date_diff.examples"></a>

```
DATE_DIFF(year, `2010-01-01T`, `2011-01-01T`)            -- 1
DATE_DIFF(year, `2010-12T`, `2011-01T`)                  -- 0 (must be at least 12 months apart to evaluate as a 1 year difference)
DATE_DIFF(month, `2010T`, `2010-05T`)                    -- 4 (2010T is equivalent to 2010-01-01T00:00:00.000Z)
DATE_DIFF(month, `2010T`, `2011T`)                       -- 12
DATE_DIFF(month, `2011T`, `2010T`)                       -- -12
DATE_DIFF(month, `2010-12-31T`, `2011-01-01T`)           -- 0 (must be at least a full month apart to evaluate as a 1 month difference)
DATE_DIFF(day, `2010-01-01T23:00Z`, `2010-01-02T01:00Z`) -- 0 (must be at least 24 hours apart to evaluate as a 1 day difference)

-- Runnable statements
SELECT DATE_DIFF(year, `2010-01-01T`, `2011-01-01T`) FROM << 0 >> -- 1
SELECT DATE_DIFF(month, `2010T`, `2010-05T`) FROM << 0 >>         -- 4
```

## 相關函數
<a name="ql-functions.date_diff.related"></a>
+ [DATE\$1ADD](ql-functions.date_add.md)
+ [EXTRACT](ql-functions.extract.md)
+ [TO\$1STRING](ql-functions.to_string.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)
+ [UTCNOW](ql-functions.utcnow.md)