

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

# Amazon QLDB 中的 EXTRACT 函數
<a name="ql-functions.extract"></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 中，使用 `EXTRACT`函數從指定的時間戳記傳回指定日期或時間部分的整數值。

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

```
EXTRACT ( datetimepart FROM timestamp )
```

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

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

*timestamp*  
函數擷取來源之資料類型的欄位名稱或表達`timestamp`式。如果此參數是未知類型 (`NULL` 或 `MISSING`)，則函數會傳回 `NULL`。  
Ion 時間戳記常值可以用反引號 () 表示``...``。如需格式化詳細資訊和時間戳記值的範例，請參閱 Amazon Ion 規格文件中的[時間戳記](https://amzn.github.io/ion-docs/docs/spec.html#timestamp)。

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

`int`

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

```
EXTRACT(YEAR FROM `2010-01-01T`)                           -- 2010
EXTRACT(MONTH FROM `2010T`)                                -- 1 (equivalent to 2010-01-01T00:00:00.000Z)
EXTRACT(MONTH FROM `2010-10T`)                             -- 10
EXTRACT(HOUR FROM `2017-01-02T03:04:05+07:08`)             -- 3
EXTRACT(MINUTE FROM `2017-01-02T03:04:05+07:08`)           -- 4
EXTRACT(TIMEZONE_HOUR FROM `2017-01-02T03:04:05+07:08`)    -- 7
EXTRACT(TIMEZONE_MINUTE FROM `2017-01-02T03:04:05+07:08`)  -- 8

-- Runnable statements
SELECT EXTRACT(YEAR FROM `2010-01-01T`) FROM << 0 >> -- 2010
SELECT EXTRACT(MONTH FROM `2010T`) FROM << 0 >>      -- 1
```

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