数値を整数に(小数点以下を削除して)フォーマットしようとしていますが、値が0より小さい負の数では、 0として表示させる方法はありますか?負の数値丸めのto_charは、ちょうど0ではなく-0になります
select to_char(-0.09,'9,999,999,999,999,990') from dual;
数値を整数に(小数点以下を削除して)フォーマットしようとしていますが、値が0より小さい負の数では、 0として表示させる方法はありますか?負の数値丸めのto_charは、ちょうど0ではなく-0になります
select to_char(-0.09,'9,999,999,999,999,990') from dual;
TO_CHARは数字を書式設定するだけで、切り上げるのではありません。したがって、最初にROUNDを使用し、必要に応じてフォーマットしてください。
select to_char(round(-0.09),'9,999,999,999,999,990') from dual;
小数点以下を削除する場合は、次の解決策を試してください。
SELECT TO_CHAR(TRUNC(-0.09),'9,999,999,999,999,990') FROM DUAL;
値を丸める場合は、ノエルが提案した解決策を使用してください。理想的には、小数点を削除するだけではなく、値を四捨五入することは論理的です。
最初に「ABS」ですか? – zerkms
ですが、変換する値は正または負のどちらでもか、0より大きくても小さくてもかまいません。任意の数値 – iPhoneJavaDev