?
?
所有的數學函數在一個出錯的情況下返回NULL。?
-?
單目減。改變參數的符號。?
mysql>?select?-?2;?
注意,如果這個操作符與一個BIGINT使用,返回值是一個BIGINT!這意味著你應該避免在整數上使用-,那可能有值-2^63!?
ABS(X)?
返回X的絕對值。?
mysql>?select?ABS(2);?
->?2?
mysql>?select?ABS(-32);?
->?32?
該功能可安全用于BIGINT值。?
SIGN(X)?
返回參數的符號,為-1、0或1,取決于X是否是負數、零或正數。?
mysql>?select?SIGN(-32);?
->?-1?
mysql>?select?SIGN(0);?
->?0?
mysql>?select?SIGN(234);?
->?1?
MOD(N,M)?
?
%?
模?(類似C中的%操作符)。返回N被M除的余數。?
mysql>?select?MOD(234,?10);?
->?4?
mysql>?select?253?%?7;?
->?1?
mysql>?select?MOD(29,9);?
->?2?
這個函數可安全用于BIGINT值。?
FLOOR(X)?
返回不大于X的最大整數值。?
mysql>?select?FLOOR(1.23);?
->?1?
mysql>?select?FLOOR(-1.23);?
->?-2?
注意返回值被變換為一個BIGINT!?
CEILING(X)?
返回不小于X的最小整數值。?
mysql>?select?CEILING(1.23);?
->?2?
mysql>?select?CEILING(-1.23);?
->?-1?
注意返回值被變換為一個BIGINT!?
ROUND(X)?
返回參數X的四舍五入的一個整數。?
mysql>?select?ROUND(-1.23);?
->?-1?
mysql>?select?ROUND(-1.58);?
->?-2?
mysql>?select?ROUND(1.58);?
->?2?
注意返回值被變換為一個BIGINT!?
ROUND(X,D)?
返回參數X的四舍五入的有D為小數的一個數字。如果D為0,結果將沒有小數點或小數部分。?
mysql>?select?ROUND(1.298,?1);?
->?1.3?
mysql>?select?ROUND(1.298,?0);?
->?1?
注意返回值被變換為一個BIGINT!?
EXP(X)?
返回值e(自然對數的底)的X次方。?
mysql>?select?EXP(2);?
->?7.389056?
mysql>?select?EXP(-2);?
->?0.135335?
LOG(X)?
返回X的自然對數。?
mysql>?select?LOG(2);?
->?0.693147?
mysql>?select?LOG(-2);?
->?NULL?
如果你想要一個數字X的任意底B的對數,使用公式LOG(X)/LOG(B)。?
LOG10(X)?
返回X的以10為底的對數。?
mysql>?select?LOG10(2);?
->?0.301030?
mysql>?select?LOG10(100);?
->?2.000000?
mysql>?select?LOG10(-100);?
->?NULL?
POW(X,Y)?
?
POWER(X,Y)?
返回值X的Y次冪。?
mysql>?select?POW(2,2);?
->?4.000000?
mysql>?select?POW(2,-2);?
->?0.250000?
SQRT(X)?
返回非負數X的平方根。?
mysql>?select?SQRT(4);?
->?2.000000?
mysql>?select?SQRT(20);?
->?4.472136?
PI()?
返回PI的值(圓周率)。?
mysql>?select?PI();?
->?3.141593?
COS(X)?
返回X的余弦,?在這里X以弧度給出。?
mysql>?select?COS(PI());?
->?-1.000000?
SIN(X)?
返回X的正弦值,在此X以弧度給出。?
mysql>?select?SIN(PI());?
->?0.000000?
TAN(X)?
返回X的正切值,在此X以弧度給出。?
mysql>?select?TAN(PI()+1);?
->?1.557408?
ACOS(X)?
返回X反余弦,即其余弦值是X。如果X不在-1到1的范圍,返回NULL。?
mysql>?select?ACOS(1);?
->?0.000000?
mysql>?select?ACOS(1.0001);?
->?NULL?
mysql>?select?ACOS(0);?
->?1.570796?
ASIN(X)?
返回X反正弦值,即其正弦值是X。L如果X不在-1到1的范圍,返回NULL。?
mysql>?select?ASIN(0.2);?
->?0.201358?
mysql>?select?ASIN('foo');?
->?0.000000?
ATAN(X)?
返回X的反正切值,即其正切值是X。?
mysql>?select?ATAN(2);?
->?1.107149?
mysql>?select?ATAN(-2);?
->?-1.107149?
ATAN2(X,Y)?
返回2個變量X和Y的反正切。它類似于計算Y/X的反正切,除了兩個參數的符號被用來決定結果的象限。?
mysql>?select?ATAN(-2,2);?
->?-0.785398?
mysql>?select?ATAN(PI(),0);?
->?1.570796?
COT(X)?
返回X的余切。?
mysql>?select?COT(12);?
->?-1.57267341?
mysql>?select?COT(0);?
->?NULL?
RAND()?
?
RAND(N)?
返回在范圍0到1.0內的隨機浮點值。如果一個整數參數N被指定,它被用作種子值。?
mysql>?select?RAND();?
->?0.5925?
mysql>?select?RAND(20);?
->?0.1811?
mysql>?select?RAND(20);?
->?0.1811?
mysql>?select?RAND();?
->?0.2079?
mysql>?select?RAND();?
->?0.7888?
你不能在一個ORDER?BY子句用RAND()值使用列,因為ORDER?BY將重復計算列多次。然而在MySQL3.23中,你可以做:?SELECT?*?FROM?table_name?ORDER?BY?RAND(),這是有利于得到一個來自SELECT?*?FROM?table1,table2?WHERE?a=b?AND?c
LEAST(X,Y,...)?
有2和2個以上的參數,返回最小(最小值)的參數。參數使用下列規則進行比較:?
如果返回值被使用在一個INTEGER上下文,或所有的參數都是整數值,他們作為整數比較。?
如果返回值被使用在一個REAL上下文,或所有的參數是實數值,他們作為實數比較。?
如果任何參數是一個大小敏感的字符串,參數作為大小寫敏感的字符串被比較。?
在其他的情況下,參數作為大小寫無關的字符串被比較。?
mysql>?select?LEAST(2,0);?
->?0?
mysql>?select?LEAST(34.0,3.0,5.0,767.0);?
->?3.0?
mysql>?select?LEAST("B","A","C");?
->?"A"?
在MySQL?3.22.5以前的版本,你可以使用MIN()而不是LEAST。?
GREATEST(X,Y,...)?
返回最大(最大值)的參數。參數使用與LEAST一樣的規則進行比較。?
mysql>?select?GREATEST(2,0);?
->?2?
mysql>?select?GREATEST(34.0,3.0,5.0,767.0);?
->?767.0?
mysql>?select?GREATEST("B","A","C");?
->?"C"?
在MySQL在?3.22.5?以前的版本,?你能使用MAX()而不是GREATEST.?
DEGREES(X)?
返回參數X,從弧度變換為角度。?
mysql>?select?DEGREES(PI());?
->?180.000000?
RADIANS(X)?
返回參數X,從角度變換為弧度。?
mysql>?select?RADIANS(90);?
->?1.570796?
TRUNCATE(X,D)?
返回數字X,截斷為D位小數。如果D為0,結果將沒有小數點或小數部分。?
mysql>?select?TRUNCATE(1.223,1);?
->?1.2?
mysql>?select?TRUNCATE(1.999,1);?
->?1.9?
mysql>?select?TRUNCATE(1.999,0);?
->?1??
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
