我应该在PostgreSQL中选择哪种数字数据类型?

问题描述 投票:0回答:1

我有一列应存储各种数字。问题是我不知道这个数字是什么-intfloat。例如,这里是可能的数字:

60073
75000
107.14
26.1532994
1293

在我看来,numeric是最好的选择,因为文档说:

数字变量用户指定的精度,精确

插入int时一切都很好,但是插入float时,它们会提高到最大可能的准确性(如果我错了,请正确。)这是我插入的数字的示例:

107.14
3600.0
-157.8829434

它们在数据库中的显示方式:

107.1400000000000005684341886080801486968994140625
3600
-157.882058499999999412466422654688358306884765625

怎么回事?我完全感到困惑。

我需要以插入数字的方式存储数字,但数字不应为字符串。

如果这很重要,那么我将这些数据插入Python asyncpg库中,所以这就是为什么我添加Python标记的原因,也许就是这个问题。

sql python-3.x postgresql
1个回答
0
投票

如果要存储双精度浮点数,则double precision是最佳数据类型。

© www.soinside.com 2019 - 2024. All rights reserved.