gpt4 book ai didi

postgresql - 从 PostgreSQL 中获取浮点值

转载 作者:行者123 更新时间:2023-11-29 12:01:23 27 4
gpt4 key购买 nike

我在从 PostgreSQL 中检索 float /实数时遇到问题。

例如,我想存储:123456789123456,然后使用 select 语句检索完全相同的数字。

表 tbl(实数)插入 tbl(num) 值('123456789123456');

现在,如果我“从 tbl 中选择 num”,结果是“1.23457e+14”如果我运行“select CAST(num AS numeric) as num from tbl”,结果是 123457000000000如果我运行“select CAST(num AS float) as num from tbl”,结果是 123456788103168(这个数字是从哪里来的)

我究竟如何选择值并得到“123456789123456”作为结果?

提前致谢

最佳答案

您声明表的列类型为“实数”,这是一个精度相当低的 float 。

您可能希望使用“ double ”类型(也称为“float”或“float8”)以获得合理程度的浮点精度。如果您知道需要存储的数字的大小和精度,则最好将列类型声明为 numeric(PREC,SCALE) - PREC 是要保留的总位数,并且SCALE 小数点右边的位数。

关于postgresql - 从 PostgreSQL 中获取浮点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2994060/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com