PostgreSQL min_scale() 函数使用指南

PostgreSQL min_scale() 函数返回精确表示给定的数字所需的最小的精度(小数位位数)。

min_scale() 语法

这里是 PostgreSQL min_scale() 函数的语法:

min_scale(numeric_value) -> integer

参数

numeric_value
必需的。 一个数字。

返回值

PostgreSQL min_scale() 函数返回精确表示给定的数字所需的最小的精度(小数位位数),即参数中的小数部分去除后缀的 0 之后的位数。

如果参数是一个整数,min_scale() 函数将会返回 0

如果参数带有小数位,min_scale() 函数将会返回小数部分中去除后缀的 0 之后的小数位位数。

如果参数为 NULLmin_scale() 函数将返回 NULL

如果您提供了一个不是数字类型的参数,PostgreSQL 将给出一个错误。

min_scale() 示例

这里有几个 min_scale() 函数的示例。

如果参数是一个整数,min_scale() 函数将会返回 0

SELECT
    min_scale(1) AS "min_scale(1)",
    min_scale(2) AS "min_scale(2)",
    min_scale(123) AS "min_scale(123)";
 min_scale(1) | min_scale(2) | min_scale(123)
--------------+--------------+----------------
            0 |            0 |              0

如果参数带有小数位,min_scale() 函数将会返回小数部分中去除后缀的 0 之后的小数位位数。

SELECT min_scale(1.23000) AS "min_scale(1.23000)";
 min_scale(1.23000)
--------------------
                  2

这里,1.23000 的小数部分是 23000,去除后缀的 0 之后变为 2323 有 2 位,因此 min_scale(1.23000) 返回了 2。