postgresql Postgres除法小数

pieyvz9o  于 2023-06-29  发布在  PostgreSQL
关注(0)|答案(3)|浏览(201)

我有一个表中的插入(例如。字段a1),其是SELECT字段01 Value/1000000中的计算值。
如何在操作后格式化字段以显示20位或更多小数。我尝试CAST(field 01 Value as double precision)/1000000,但值显示为2 E-5。谢谢!

4ngedf3f

4ngedf3f1#

你试过ROUND功能吗?

SELECT ROUND(field01Value::numeric / 1000000, 20) AS calculated_value
FROM table;

似乎重复:-How to round an average to 2 decimal places in PostgreSQL?

sdnqo3pr

sdnqo3pr2#

我建议转换为numeric(precision, scale)。在您的情况下,小数位数为20,精度为您允许的最大位数。

select field01Value/1000000::numeric(30,20)
from mytable

示例:https://dbfiddle.uk/DLfdUN_Y

yc0p9oo0

yc0p9oo03#

在PostgreSQL中,你可以使用ROUND()函数和::numeric转换来显示计算结果,并带有给定的小数位数,而不使用科学计数法。下面是一个例子:

SELECT (field01Value::numeric / 1000000)::numeric(30, 20) AS calculated_value
FROM your_table;

相关问题