

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

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

# TO\_NUMBER
<a name="r_TO_NUMBER"></a>

TO\_NUMBER 將字串轉換為數值 (十進位)。

**注意**  
建議您在格式字串中使用 `FM` 來隱藏填補空白和零。如需有效格式的清單，請參閱[數值格式字串](r_Numeric_formating.md)。

## 語法
<a name="r_TO_NUMBER-synopsis"></a>

```
to_number(string, format)
```

## 引數
<a name="r_TO_NUMBER-arguments"></a>

 *string*   
要轉換的字串。格式必須是文字值。

 *format*   
第二個引數是格式字串，指出如何剖析字元字串來建立數值。例如，格式 `'FM99D999'` 指定要轉換的字串包含五位數，且第三個位置是小數點。例如，`to_number('12.345','FM99D999')` 會將以數值傳回 `12.345`。如需有效格式的清單，請參閱[數值格式字串](r_Numeric_formating.md)。

## 傳回類型
<a name="r_TO_NUMBER-return-type"></a>

TO\_NUMBER 傳回 DECIMAL 數字。

如果轉換成 *format* 失敗，則會傳回錯誤。

## 範例
<a name="r_TO_NUMBER-examples"></a>

下列範例將字串 `12,454.8-` 轉換為數字：

```
select to_number('12,454.8-', 'FM99G999D9S');

to_number
-----------
-12454.8
```

下列範例將字串 `$ 12,454.88` 轉換為數字：

```
select to_number('$ 12,454.88', 'FML99G999D99');

to_number
-----------
12454.88
```

下列範例將字串 `$ 2,012,454.88` 轉換為數字：

```
select to_number('$ 2,012,454.88', 'FML9,999,999.99');

to_number
-----------
2012454.88
```