我需要在列中存储值,如 0.0000003215218845
我的专栏需要什么类型?我试过让它成为 real
或 float
但是当我运行一个选择查询时,我得到的值是 3.21522e-07
我的列需要什么类型才能使选择查询完全返回 0.0000003215218845
值?
最佳答案
如果要控制 float 转换为字符串的方式,请使用 to_char
功能:
SELECT 0.0000003215218845::double precision;
float8
-----------------
3.215218845e-07
(1 row)
SELECT to_char(0.0000003215218845::double precision,
'FM90.9999999999999999');
to_char
------------------
0.00000032152188
(1 row)
数值之差为舍入误差。
对具有任意精度的值使用numeric
。
关于postgresql - 用于存储多位小数的 Postgres 列类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45438100/