SQRT 函数 - Amazon Redshift

SQRT 函数

SQRT 函数返回 NUMERIC 值的平方根。平方根是一个乘以自身以得到给定值的数字。

语法

SQRT(expression)

参数

expression

表达式必须具有 INTEGERDECIMALFLOAT 数据类型,或隐式转换为这些数据类型的数据类型。expression 可以包含函数。

返回类型

DOUBLE PRECISION

示例

要返回 16 的平方根,请使用以下示例。

SELECT SQRT(16); +------+ | sqrt | +------+ | 4 | +------+

要使用隐式类型转换返回字符串 16 的平方根,请使用以下示例。

SELECT SQRT('16'); +------+ | sqrt | +------+ | 4 | +------+

要在使用 ROUND 函数后返回 16.4 的平方根,请使用以下示例。

SELECT SQRT(ROUND(16.4)); +------+ | sqrt | +------+ | 4 | +------+

要返回给定圆面积时的半径长度,请使用以下示例。例如,当给定以平方英寸为单位的面积时,它以英寸为单位计算半径。示例中的面积为 20。

SELECT SQRT(20/PI()) AS radius; +--------------------+ | radius | +--------------------+ | 2.5231325220201604 | +--------------------+

以下示例使用 TICKIT 示例数据库。有关更多信息,请参阅 示例数据库

要返回 SALES 表中 COMMISSION 值的平方根,请使用以下示例。COMMISSION 列是 DECIMAL 列。此示例说明如何在具有更复杂条件逻辑的查询中使用该函数。

SELECT SQRT(commission) FROM sales WHERE salesid < 10 ORDER BY salesid; +--------------------+ | sqrt | +--------------------+ | 10.449880382090505 | | 3.3763886032268267 | | 7.245688373094719 | | 5.123475382979799 | | 4.806245936279167 | | 7.687652437513028 | | 10.871982339941507 | | 5.4359911699707535 | | 9.41541289588513 | +--------------------+

要返回同一组 COMMISSION 值的平方根的舍入值,请使用以下示例。

SELECT ROUND(SQRT(commission)) FROM sales WHERE salesid < 10 ORDER BY salesid; +-------+ | round | +-------+ | 10 | | 3 | | 7 | | 5 | | 5 | | 8 | | 11 | | 5 | | 9 | +-------+