postgresql - 用于存储多位小数的 Postgres 列类型

标签 postgresql column-types

我需要在列中存储值,如 0.0000003215218845

我的专栏需要什么类型?我试过让它成为 realfloat 但是当我运行一个选择查询时,我得到的值是 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/

相关文章:

postgresql - 如何从 RowDescription 消息中查看 PostgreSQL 列类型?

sql-server - URL 的最佳列类型是什么?

postgresql - Postgres 13.3 中重载函数的奇怪行为

sql - PostgreSQL 中的赋值操作是原子的吗?

SQL Select 语句分成分组/ block

postgresql - 删除循环数据库关系

MySQL "binary"与 "char character set binary"

sql-server - 如何在 SQL 2008 中更改列而不删除表

postgresql - 如何从表中删除已超过 PostgreSQL 过期限制的所有条目?