ここでは数値を操作するSQL関数について紹介します。
目次
数値を編集する
文字列を数値に変換する(TO_NUMBER関数)
SELECT TO_NUMBER('00123') FROM DUAL
--結果:123
書式を指定して文字列を数値に変換する(TO_NUMBER関数)
--書式の'9'は数値
SELECT TO_NUMBER('1234.56', '9999.99') FROM DUAL
--結果:1234.56
--書式の'L'は通貨記号、'G'は3桁区切り、'D'は小数点
SELECT TO_NUMBER('\1,234.56', 'L9G999D99') FROM DUAL
--結果:1234.56
数値を0埋めする(TO_CHAR関数)
--書式の'FM'は前後に空白を付けずに表示する
SELECT TO_CHAR(123, 'FM00000') FROM DUAL
--結果:00123
数値の書式
書式 | 説明 | 使用例 |
---|---|---|
0 | 該当する桁がなければ0を表示する。 | TO_CHAR(123, ‘00000’) 結果:00123 |
9 | 該当する桁がなければブランクを表示する。 | TO_CHAR(123, ‘99999.99’) 結果: 123.00 |
D | 小数点を指定位置に表示する。 | TO_CHAR(123.00, ‘99999D99’) 結果: 123.00 |
S | 符号(+/-)を表示する。 | TO_CHAR(123.00, ‘S99999’) 結果: +123 |
L | ローカル通貨記号を付けて表示する。 | TO_CHAR(123.00, ‘L99999’) 結果: \123 |
G | 3桁区切りで表示する。 | TO_CHAR(12345, ’99G999′) 結果: 12,345 |
FM | 前後に空白を付けずに表示する | TO_CHAR(123, ‘FM00000’) 結果:00123 |
以上、数値を操作するSQL関数について解説しました。