有人可以建议我如何在不使用TO_CHAR功能的情况下使用逗号分隔显示数字。
NUMBER 3455678.05应显示为3,455,678.05 NUMBER 3455678应显示为3,455,678
答案 0 :(得分:3)
不使用TO_CHAR(),除非可以在客户端程序中处理,否则不可能。
例如,在SQL * Plus中,您可以执行以下操作:
set numformat 999,999,999,999,999.00
但这不是一个完整的例子,因为3455678.05将打印为3,455,678.05,但是,3455678将打印为3,455,678.00。
正确的解决方案是使用TO_CHAR()函数,同时设置NLS_TERRITORY和/或NLS_NUMERIC_CHARACTERS以正确格式化输出。
希望有所帮助。
答案 1 :(得分:0)
显示格式化应该在您的应用程序或表示层中完成,而不是通过SQL。
如果你坚持这样做,那么正如Mark J. Bobak所说,to_char是你唯一的选择。