【发布时间】:2012-03-02 01:55:35
【问题描述】:
有人可以建议我如何在不使用 TO_CHAR 函数的情况下使用逗号分隔来显示数字。
NUMBER 3455678.05 应显示为 3,455,678.05 NUMBER 3455678 应显示为 3,455,678
【问题讨论】:
-
如果您不想或不能使用完美的工具来完成这项工作,您必须给出充分的理由。
标签: oracle numbers format comma
有人可以建议我如何在不使用 TO_CHAR 函数的情况下使用逗号分隔来显示数字。
NUMBER 3455678.05 应显示为 3,455,678.05 NUMBER 3455678 应显示为 3,455,678
【问题讨论】:
标签: oracle numbers format comma
不使用 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 以正确格式化输出。
希望对您有所帮助。
【讨论】:
显示格式应该在您的应用程序或表示层中完成,而不是通过 SQL。
如果你坚持这样做,那么正如 Mark J. Bobak 所说,to_char 是你唯一的选择。
【讨论】: