2012-03-02 11 views
0

TO_CHAR関数を使用せずにコンマ区切りを使用して数値を表示する方法をお勧めしますか。それは、クライアントプログラムで処理することができない限り、3,455,678.05 NUMBER 3455678は、TO_CHARを(使用しない3455678カンマ区切りの番号の書式設定、oracleのNO TO_CHARの書式設定

+3

あなたが仕事に完璧なツールを使いたくない、または使用したくない場合は、正当な理由があります。 –

答えて

3

として表示されなければならないよう3455678.05が表示されるべき

NUMBER)が、それは、不可能です。例えば

、SQL * Plusで、あなたが行うことができます。

set numformat 999,999,999,999,999.00 

しかし3455678.05は3,455,678.05として印刷するだろうが、、3455678が3,455,678.00として印刷しているが、完全な例ではありません。

適切な解決策は、出力を適切にフォーマットするためにNLS_TERRITORYおよび/またはNLS_NUMERIC_CHARACTERSを設定するとともにTO_CHAR()関数を使用することです。

希望に役立ちます。

+0

実際には、正しい解決策は、SQL * Plusの例で示したように、クライアントプログラムが表示の問題を処理できるようにすることだと思います。それはすべて、懸念事項の分離に関するものです。 – APC

0

表示形式は、アプリケーション層やプレゼンテーション層で行う必要がありますが、SQLでは実行しないでください。

Mark J. Bobakによると、あなたがそれを主張するならば、to_charがあなたの唯一の選択肢です。