我需要存储像0.0000003215218845
我的专栏需要什么类型?我尝试过real
或float
但是当我运行一个选择查询时,我得到的值是3.21522e-07
我的列需要什么类型才能让select查询返回完全0.0000003215218845
值?
答案 0 :(得分:2)
请参阅postgres文档:floating-point-types。可能fixed-point-types也可以提供帮助。 但你必须意识到:
答案 1 :(得分:2)
如果要控制浮点数如何转换为字符串,请使用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
。