天天看點

開發指南—函數—數學函數

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) 求n/m的反正切值(參數是弧度)。

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表中productID字段共有多少條記錄:

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)

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

繼續閱讀