内置数学 SQL 函数

、概述

下面显示的数学函数是 SQLite 合并源文件的一部分,但只有在使用-DSQLITE_ENABLE_MATH_FUNCTIONS编译时选项编译 合并时才有效 。

数学函数的参数可以是整数、浮点数或看起来像整数或实数的字符串或 blob。如果任何参数为 NULL 或者是不容易转换为数字的字符串或 blob,则该函数将返回 NULL。这些函数还会为域错误返回 NULL,例如尝试取负数的平方根,或计算大于 1.0 或小于 -1.0 的值的反余弦值。

这些函数返回的值通常是近似值。例如,pi()函数返回 3.141592653589793115997963468544185161590576171875,这大约是 1.22465e-16 太小了,但它是 IEEE754 双精度可用的最接近的近似值。

2.内置标量SQL 数学函数说明

acos(X)

返回 X 的反余弦值。结果以弧度表示。

acosh(X)

返回 X 的双曲反余弦值。

asin(X)

返回 X 的反正弦值。结果以弧度表示。

asinh(X)

返回 X 的双曲反正弦值。

atan(X)

返回 X 的反正切值。结果以弧度为单位。

atan2(Y,X)

返回 Y/X 的反正切值。结果以弧度为单位。根据 X 和 Y 的符号将结果放入正确的象限。

atanh(X)

返回 X 的双曲反正切值。

ceil(X)
ceiling(X)

返回大于或等于 X 的第一个可表示整数值。对于 X 的正值,此例程从零舍入。对于 X 的负值,此例程向零舍入。

cos(X)

返回 X 的余弦值。X 以弧度为单位。

cosh(X)

返回 X 的双曲余弦值。

degrees(X)

将值 X 从弧度转换为度数。

exp(X)

计算e(欧拉数,约 2.71828182845905)的 X 次方。

floor(X)

返回小于或等于 X 的第一个可表示整数值。对于正数,此函数向零舍入。对于负数,此函数从零舍入。

ln(X)

返回 X 的自然对数。

log(X)
log10(X)
log(B,X)

返回 X 的以 10 为底的对数。或者,对于双参数版本,返回 X 的以 B 为底的对数。

兼容性说明:SQLite 的工作方式类似于 PostgreSQL,因为 log() 函数计算以 10 为底的对数。大多数其他 SQL 数据库引擎计算 log() 的自然对数。在 log(B,X) 的双参数版本中,第一个参数是基数,第二个参数是操作数。这与 PostgreSQL 和 MySQL 中的相同,但与 SQL Server 相反,SQL Server 使用第二个参数作为基数,第一个参数作为操作数。

log2(X)

返回数字 X 的以 2 为底的对数。

mod(X,Y)

返回 X 除以 Y 后的余数。这类似于“%”运算符,只是它适用于非整数参数。

pi()

返回 π 的近似值。

pow(X,Y)
power(X,Y)

计算 X 的 Y 次方。

radians(X)

将 X 从度数转换为弧度。

sin(X)

返回 X 的正弦值。X 以弧度为单位。

sinh(X)

返回 X 的双曲正弦值。

sqrt(X)

返回 X 的平方根。如果 X 为负,则返回 NULL。

tan(X)

返回 X 的正切。X 以弧度为单位。

tanh(X)

返回 X 的双曲正切值。

trunc(X)

返回 X 和 0(含)之间离零最远的可表示整数。或者,换句话说,返回 X 的整数部分,向零舍入。trunc() 函数类似于ceiling(X)floor(X),只是它总是向零舍入,而 ceiling(X) 和 floor(X) 分别向上和向下舍入。