【发布时间】:2009-03-16 22:44:06
【问题描述】:
我有一个包含这两列的数据库表:
- 金额:数字 (18,0)
- DecimalPlaces:数字 (18,0)
此表可以存储各种货币的金额,从金额中删除小数位(我无法更改此数据模型)。例如,可能有两行这样的:
- 1290, 2(这是 12.90 英镑,需要显示为“12.90”)
- 3400, 0(这是3400日元,需要显示为“3400”)
我需要一个针对 Oracle 和 SQL Server 的 SQL 查询,它将使用正确的小数位数格式化每个金额,并保留所有尾随零,如上图所示。我无法使用存储过程、报告工具或 Excel。
【问题讨论】:
-
Tom H. 实际上引导我走上正义之路,他的建议是格式最好留给客户。所以我最终通过重构客户端来解决这个问题。它使查询引擎更加复杂,但不如使用特定于大型数据库的查询那样复杂。
-
哇,10k 浏览量和零点赞 - 当然有一个徽章 - 也许是“着名的令人失望的问题”? :-)
标签: sql sql-server oracle formatting decimal