postgresql向下舍入

atmip9wb  于 2022-12-12  发布在  PostgreSQL
关注(0)|答案(1)|浏览(119)

这是一个示例查询,我一直在尝试找到一个解决方法,但我对postgresql的知识仍然有限。提前感谢。
示例查询:

select round(3.041,2) as column

预期输出:

3.03 instead of 3.04

四舍五入UP工作,但我需要它四舍五入DOWN以及如果十进制值〈5。

rryofs0p

rryofs0p1#

您可以使用一些简单的十进制计数进行向下舍入,例如

SELECT 
  3.04 - POWER(10, 
    (-1 *
        CAST(
          LENGTH(
            SPLIT_PART(
              CAST(3.04 AS STRING), '.', 2
            )
          ) 
    AS INT)
    )
  )

但是,我不知道你为什么要这么做,你确定你不是想使用基本的ROUND函数,去掉更多的有效数字吗?

相关问题