SQL POWER:以特定数字为底数对数字进行幂运算

SQL POWER 函数返回以指定数字为底数对 numeric_expression 进行的幂运算的计算结果。

语法

以下是对 POWER 函数语法的说明。

POWER(numeric_expression,power)Code language: SQL (Structured Query Language) (sql)

参数

POWER 函数接受 2 个参数:

numeric_expression
是一个计算结果为数字的表达式。

power

numeric_expression 的幂运算的底数。power 可以是一个数字或计算结果为数字的表达式。

返回类型

POWER 表达式的返回结果为数字,其数据类型为第一个参数的类型,即 numeric_expression 的计算结果。

示例

以下语句返回第一个参数,因为以 1 为底数对任意数字进行幂运算,其结果都等于该数字本身。

SELECT POWER(10,1);Code language: SQL (Structured Query Language) (sql)
 power
-------
    10
(1 row)Code language: SQL (Structured Query Language) (sql)

以下示例返回 1,因为以 0 为底数对任意数字进行幂运算,其结果都等于 1。

SELECT POWER(10,0);
Code language: SQL (Structured Query Language) (sql)
 power
-------
     1
(1 row)Code language: SQL (Structured Query Language) (sql)

以下示例返回一个数字的平方。

SELECT POWER(10,2);
Code language: SQL (Structured Query Language) (sql)
 power
-------
   100
(1 row)Code language: SQL (Structured Query Language) (sql)

以下语句返回一个数字的立方。

SELECT POWER(10,3);Code language: SQL (Structured Query Language) (sql)
 power
-------
  1000
(1 row)Code language: SQL (Structured Query Language) (sql)

如果 power 是一个分数,则 POWER 函数返回对应值的根,例如 1/2 为平方根,1/3 为立方根,依此类推。

SELECT POWER(100,0.5);
Code language: SQL (Structured Query Language) (sql)
       power
--------------------
 10.00
(1 row)Code language: SQL (Structured Query Language) (sql)

如果 power 是一个负数,则 POWER 函数返回一个值,该值等于以相反的正数为底数对该数字进行幂运算的倒数。请参阅以下示例。

SELECT POWER(100,-1);
Code language: SQL (Structured Query Language) (sql)
 power
-------
  0.01
(1 row)Code language: SQL (Structured Query Language) (sql)

备注

在某些数据库系统中,例如 Microsoft SQL Server,如果第二个参数为负数,则 POWER 函数返回零 (0)。

除了 POWER 函数之外,MySQL 和 PostgresQL 接受 POW 函数作为 POWER 函数的同义词。

本教程有帮助吗?