总是在SQL中显示小数位?

时间:2009-04-28 18:00:42

标签: sql oracle formatting

我正在处理一个返回数值(货币)的查询。有些值是整数,显示为3,5,2等,而其他数字则为2.52,4.50等。

如何强制oracle始终显示小数位?

由于

4 个答案:

答案 0 :(得分:12)

答案 1 :(得分:5)

数据的显示和格式化应在表示层处理 - 而不是数据处理。

使用前端提供的工具根据需要格式化值。

答案 2 :(得分:1)

to_char解决了小数问题,但您必须确定长度。如果它比提供的格式长,则会将数字显示为####。如果数字较短,那么它将在数字前留出空格。 e.g

to_char(123.45),'99.00')会显示####

to_char(123.45),'999999.00')会显示' 123.45'

因此,如果您必须将结果导出为CSV或Excel,则这些数字将被视为字符串。

所以,我没有找到任何解决方案。

答案 3 :(得分:0)

在SQL * Plus中,您可以使用COLUMN指令以每列为基础指定格式,与查询本身分开。这样,您可以将查询保持“干净”以用于其他可能的用途,并仍然可以获得格式。 (至少在SQL * Plus中......)

e.g

COLUMN SAL FORMAT 99,990.99

Google提供“SQL * Plus用户指南和参考”,您应该获得Oracle版本的Oracle位置链接。如果可以的话,10.1是here。它们可能大致相同,请注意:自从我在1988年在Oracle 5.1.17上学到它以来,我认为SQL * Plus已经发生了很大变化......

相关问题