Oracle Database 文字列を数値に変換する

Oracle Database 文字列を数値に変換する

Oracle Databaseで、文字列を数値に変換する手順を記述してます。「TO_NUMBER」で可能です。ここでは、実際に実行した結果を画像で掲載してます。

環境

  • OS windows11 home
  • Oracle Database 21c Express Edition
  • SQL Developer 21.2.1.204

手順

文字列を数値に変換するには「TO_NUMBER」を使用します。

TO_NUMBER(文字列)

実際に、変換してみます。
※「DUAL」テーブルはダミーとして使用できるテーブルです。

SELECT 
TO_NUMBER('01') ,
TO_NUMBER('01.01') 
FROM DUAL;

実行結果

変換されていることが確認できます。

文字列を変換しようとした場合は、エラーとなります。

SELECT 
TO_NUMBER('a')
FROM DUAL;

ORA-01722: 数値が無効です。
01722. 00000 -  "invalid number"
*Cause:    The specified number was invalid.
*Action:   Specify a valid number.

フォーマットを指定

変換後のフォーマットを指定してカンマを入れることも可能です。

SELECT 
TO_NUMBER('1,000', '9,999')
FROM DUAL;

実行結果