(1)絕對值函數(ABS(x))和返回圓周率的函數PI
ABS(X)放回X的絕對值
select abs(2),abs(-3.3),abs(1-9);
select pi();
(2)平方根函數SQRT(x)和求余函數MOD(x,y)
select SQRT(9),SQRT(40),SQRT(-49);
select MOD(31,8),MOD(234,10),MOD(45.5,6);
(3)獲取整數的函數CEIL(x),CEILING(x)和FLOOR(x)
CEIL(x)和CEILING(x)意義相同,返回不小於x的最小整數值,返回值轉化為一個BIGINT。
select CEIL(-3.35),CEILING(3.35);
使用FLOOR(x)返回不大於x的最大整數值,返回值轉化為一個BIGINT。
select floor(-3.35),floor(3.35);
(4)獲取隨機數的函數RAND()和RAND(x)
RAND(x)返回一個隨機浮點數v,范圍在0-1之間。如果指定一個整數參數x,則他會被作為種子值,用來產生重復序列
select RAND(),RAND();
select RAND(10),RAND(10);
(5)四捨五入函數ROUND(x)、ROUND(x,y)和TRUNCATE(x,y)
ROUND(X)返回最接近x的整數,對x進行四捨五入
SELECT ROUND(-1.14),ROUND(-1.67),ROUND(1.14),ROUND(1.67);
ROUND(x,y)返回接近於x的數,保留小數點後的y位,如果y為負數,則將保留x值到小數點左邊的y位。
SELECT ROUND(1.38,1),ROUND(1.38,0),ROUND(232.38,-1),ROUND(232.38,-2);
TRUNCATE(x,y)返回比捨去至小數點後y位的數字。如果y為0,則返回不帶小數點或者不帶小數部分。如果y為負數,則截取x小數點左起第y位開始後面所有低位的值。
SELECT TRUNACATE(1.31,1),TRUNCATE(1.99,1),TRUNCATE(1.99,0)