Amazon Redshift は、2025 年 11 月 1 日以降、新しい Python UDF の作成をサポートしなくなります。Python UDF を使用する場合は、その日付より前に UDF を作成してください。既存の Python UDF は引き続き通常どおり機能します。詳細については、ブログ記事
TO_NUMBER
TO_NUMBER は、文字列を数値 (10 進) に変換します。
注記
パディングの空白とゼロを抑制するには、フォーマット文字列で FM を使用することをお勧めします。有効な形式の一覧については、「 数値形式の文字列」を参照してください。
構文
to_number(string, format)
引数
- string
-
変換する文字列。形式はリテラル値である必要があります。
- format
-
2 番目の引数は、数値を作成するために文字列を解析する方法を示す書式文字列です。例えば、形式
'FM99D999'では、変換する文字列が 5 つの数字で構成され、3 番目の位置に小数点が挿入されます。たとえば、to_number('12.345','FM99D999')は数値として12.345を返します。有効な形式の一覧については、「 数値形式の文字列」を参照してください。
戻り型
TO_NUMBER は DECIMAL 型の数値を返します。
フォーマットへの変換が失敗すると、エラーが返されます。
例
次の例では、文字列 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