PostgreSQL factorial() 函数

PostgreSQL factorial() 函数返回一个数字的阶乘。

factorial() 语法

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

factorial(n) -> bigint

参数

n
必需的。 一个正整数或者零。

返回值

PostgreSQL factorial() 函数返回一个数字的阶乘。比如 factorial(4) 返回 4 的阶乘,即: 4 * 3 * 2 * 1 = 24

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

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

factorial() 示例

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

SELECT
    factorial(0) AS "factorial(0)",
    factorial(5) AS "factorial(5)",
    factorial(10) AS "factorial(10)";
 factorial(0) | factorial(5) | factorial(10)
--------------+--------------+---------------
            1 |          120 |       3628800

如果您使用了一个不是数字类型的参数,PostgreSQL 将给出一个错误:无效的类型 double precision 输入语法。

SELECT factorial('abc');
错误:  无效的类型 bigint 输入语法: "abc"
第1行SELECT factorial('abc');
                      ^