gpt4 book ai didi

postgresql - 在postgresql中划分大数

转载 作者:行者123 更新时间:2023-11-29 11:49:25 33 4
gpt4 key购买 nike

我正在处理 18 位小数的数字,我决定将该数字保存为数据库中的“NUMERIC (36)”

现在我想通过做下面的划分来呈现

select (5032345678912345678::decimal  / power(10, 18)::decimal )::decimal(36,18)

结果5.032345678912345700

预期结果5.032345678912345678

如果我使用 16 位小数的精度,它会起作用

select (50323456789123456::decimal  / power(10, 16)::decimal )::decimal(36,16)

结果 5.0323456789123456

知道如何在不丢失信息的情况下处理 18 位小数吗?

最佳答案

使用类型为 decimal(38,18) 的常量:

select 5032345678912345678::decimal / 1000000000000000000::decimal(38,18);

?column?
----------------------
5.032345678912345678
(1 row)

常量应该快一点。但是,同样的转换也适用于 power(10,18)

关于postgresql - 在postgresql中划分大数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44957650/

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