ヘッダーをスキップ
Oracle OLAP DMLリファレンス
11g リリース1(11.1)
E05732-02
  目次へ
目次
索引へ
索引

戻る
戻る
 
次へ
次へ
 

TO_NUMBER

TO_NUMBERファンクションは、書式が設定されたTEXTまたはNTEXT式を、数値に変換するファンクションです。このファンクションは通常、通貨記号、小数点、3桁区切りなどを含むアプリケーションで、書式が設定されている数値出力を他のアプリケーションの入力として使用できるように変換するために使用します。

戻り値

NUMBER。書式モデルにMISまたはPRの書式要素が含まれている場合以外は、負の戻り値の前には負の記号が含まれ、正の値の名前には空白が含まれます。

構文

TO_NUMBER(text-exp, [fmt,] [nlsparams])

引数

text-exp

変換する数値を含むテキスト式。式には、TEXTまたはNTEXTデータ型を使用できます。NTEXT値を数値として解釈できない場合は、NTEXTからの変換は不適切な結果となります。

fmt

数値の書式モデルを示すテキスト式。このモデルは、NUMBERへの変換の実行方法を指定します。数値の書式モデルの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。

デフォルトの数値書式では、ピリオド(.)が小数点として識別され、他の記号は認識されません。

nlsparams

text-expで使用される3桁区切り、小数点および通貨記号を指定するテキスト式。この式には、次の1つ以上のパラメータを含め、カンマで区切ります。

NLS_CURRENCY symbol 

NLS_ISO_CURRENCY territory 

NLS_NUMERIC_CHARACTERS dg 

symbol

各国通貨記号を指定するテキスト式。11文字以上を指定することはできません。

territory

ISO通貨記号が使用されている地域を示すテキスト式。

dg

小数点(d)および3桁区切り(g)を示す、2つの異なるシングルバイト文字で構成されるテキスト式。

これらのパラメータは、NLS_CURRENCY、NLS_ISO_CURRENCYおよびNLS_NUMERIC_CHARACTERSオプションにより指定されるデフォルト値を上書きします。追加情報は、NLSオプションの項を参照してください。

注意

デフォルトの数値書式値

一部の書式の値は、NLS_TERRITORYの値によって決定されます

TO_NUMBERの端数処理により発生する可能性のある影響

数値のすべての書式モデルにより、数値が指定した有効桁数に端数処理されます。表8-10「端数処理により発生する可能性のある影響」に、端数処理による一部の影響を示します。

例8-142 テキスト・データの10進データへの変換

次の文では、各国通貨記号(L)、3桁区切り(G)および小数点(D)を識別することにより、テキスト文字列をDECIMALデータ型に変換します。GおよびDの書式がセッションの現行の設定とは異なるため、NLS_NUMERIC_CHARACTERSオプションにこれらの書式で使用されている文字を指定します。

DEFINE money VARIABLE DECIMAL
money = TO_NUMBER('$94 567,00', 'L999G999D00', NLS_NUMERIC_CHARACTERS ', ')
SHOW money

この文によって生成される出力は次のとおりです。

94,567.00