数学函数
本文介绍了PolarDB-X支持的数学函数。
PolarDB-X支持如下数学函数:
函数名 | 描述 | 示例 |
---|---|---|
ABS(x) | 返回x的绝对值。 | 返回-1的绝对值: SELECT ABS(-1); 返回: --1 |
ACOS(x) | 求x的反余弦值(参数是弧度)。 | SELECT ACOS(0.25); |
ASIN(x) | 求x的反正弦值(参数是弧度)。 | SELECT ASIN(0.25); |
ATAN(x) | 求x的反正切值(参数是弧度)。 | SELECT ATAN(2.5); |
ATAN2(n, m) | 求x的反正切值(参数是弧度)。 | SELECT ATAN2(-0.8, 2); |
AVG(expression) | 返回一个表达式的平均值,expression是一个字段。 | 返回Products表中Price字段的平均值: SELECT AVG(Price) AS AveragePrice FROM Products; |
CEIL(x) | 返回大于或等于x的最小整数 。 | SELECT CEIL(1.5); 返回: --2 |
CEILING(x) | 返回大于或等于x的最小整数。 | SELECT CEILING(1.5); 返回: --2 |
COS(x) | 求余弦值(参数是弧度)。 | SELECT COS(2); |
COT(x) | 求余切值(参数是弧度)。 | SELECT COT(6); |
COUNT(expression) | 返回查询的记录总数,expression参数是一个字段或者*号。 | 返回Products表中products字段共有多少条记录: SELECT COUNT(ProductID) AS NumberOfProducts FROM Products; |
DEGREES(x) | 将弧度转换为角度。 | SELECT DEGREES(3.1415926535898); 返回: -- 180 |
n DIV m | 整除,n为被除数,m为除数。 | 计算10除以5: SELECT 10 DIV 5; 返回: -- 2 |
EXP(x) | 返回e的x次方。 | 计算e的三次方: SELECT EXP(3); 返回: -- 20.085536923188 |
FLOOR(x) | 返回小于或等于x的最大整数。 | 小于或等于1.5的整数: SELECT FLOOR(1.5); 返回: -- 1 |
GREATEST(expr1, expr2, expr3, ...) | 返回列表中的最大值。 | 返回以下数字列表中的最大值: SELECT GREATEST(3, 12, 34, 8, 25); 返回: -- 34 返回以下字符串列表中的最大值: SELECT GREATEST("Google", "Runoob", "Apple"); 返回: -- Runoob |
LEAST(expr1, expr2, expr3, ...) | 返回列表中的最小值。 | 返回以下数字列表中的最小值: SELECT LEAST(3, 12, 34, 8, 25); 返回: -- 3 返回以下字符串列表中的最大值: SELECT LEAST("Google", "Runoob", "Apple"); 返回: -- Apple |
LN | 返回数字的自然对数,以e为底。 | 返回2的自然对数: SELECT LN(2); 返回: -- 0.6931471805599453 |
LOG(x)或LOG(base, x) | 返回自然对数(以e为底的对数),如果带有base参数,则base为指定带底数。 | SELECT LOG(20.085536923188) 返回: -- 3 SELECT LOG(2, 4); 返回: -- 2 |
LOG10(x) | 返回以10为底的对数。 | SELECT LOG10(100) ; 返回: -- 2 |
LOG2(x) | 返回以2为底的对数。 | 返回以2为底6的对数: SELECT LOG2(6); 返回: -- 2.584962500721156 |
MAX(expression) | 返回字段expression中的最大值。 | 返回数据表Products中字段Price的最小值: SELECT MAX(Price) AS LargestPrice FROM Products; |
MIN(expression) | 返回字段expression中的最小值。 | 返回数据表Products中字段Price的最小值: SELECT MIN(Price) AS MinPrice FROM Products; |
MOD(x,y) | 返回x除以y以后的余数。 | 5除以2的余数: SELECT MOD(5,2); 返回: -- 1 |
PI() | 返回圆周率(3.141593)。 | SELECT PI(); 返回: --3.141593 |
POW(x,y) | 返回x的y次方。 | 2的3次方: SELECT POWER(2,3); 返回: -- 8 |
POWER(x,y) | 返回x的y次方。 | 2的3次方: SELECT POWER(2,3); 返回: -- 8 |
RADIANS(x) | 将角度转换为弧度。 | 180度转换为弧度: SELECT RADIANS(180); 返回: -- 3.1415926535898 |
RAND() | 返回0到1的随机数。 | SELECT RAND(); 返回: --0.93099315644334 |
ROUND(x) | 返回离x最近的整数。 | SELECT ROUND(1.23456; 返回: --1 |
SIGN(x) | 返回x的符号,x是负数、0、正数分别返回-1、0和1。 | SELECT SIGN(-10); 返回: -- (-1) |
SIN(x) | 求正弦值(参数是弧度)。 | SELECT SIN(RADIANS(30)); 返回: -- 0.5 |
SQRT(x) | 返回x的平方根。 | 25的平方根: SELECT SQRT(25); 返回: -- 5 |
SUM(expression) | 返回指定字段的总和。 | 计算OrderDetails表中字段Quantity的总和: SELECT SUM(Quantity) AS TotalItemsOrdered FROM OrderDetails; |
TAN(x) | 求正切值(参数是弧度)。 | SELECT TAN(1.75); 返回: -- -5.52037992250933 |
TRUNCATE(x,y) | 返回数值x保留到小数点后y位的值(与ROUND最大的区别是不会进行四舍五入)。 | SELECT TRUNCATE(1.23456,3); 返回: -- 1.234 |