【发布时间】:2010-06-26 05:22:52
【问题描述】:
我有一个包含 3 列的表格:
customer_name varchar
,account_type varchar
,current_balance double precision
current_balance 的示例值:
1200 1500.5 1500我希望它们像这样显示:
1200.00 1500.50 1500.00我尝试了以下查询:
SELECT to_char(current_balance,'9999999999999999D99')
FROM bank;
它按照我想要的方式格式化,但在开头添加了一个空格。如何解决这个问题?有没有更好的格式化方式?
【问题讨论】:
-
停在你所在的地方。小心read the section on how doubles are treated in Postgres。双精度数被视为浮点值。浮点数的存储和计算方式可能会丢失精度。不要使用浮点值来存储货币值。使用
NUMERIC或DECIMAL类型。
标签: postgresql formatting floating-point