我试图用以下方法截断PostgreSQL中的数字:
SELECT trunc(31.71429,15);
我有这个输出:
31.714290000000000
但在甲骨文里我有这样一个:
31.71429
怎么能有和甲骨文一样的输出呢?
最佳答案
这是数值数据类型的行为。最简单的解决方案-可能会丢失一些小精度,将其转换为双精度:
postgres=# SELECT trunc(31.71429,15);
┌────────────────────┐
│ trunc │
╞════════════════════╡
│ 31.714290000000000 │
└────────────────────┘
(1 row)
postgres=# SELECT trunc(31.71429,15)::double precision;
┌──────────┐
│ trunc │
╞══════════╡
│ 31.71429 │
└──────────┘
(1 row)
关于postgresql - 从trunc()函数返回的数字中删除尾随零,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45740355/