MySQL数字函数

欢迎访问本人博客查看原文:http://wangnan.tech
SQL数字函数主要用于数字处理和/或数学计算。下表详细介绍了数字功能:
名字 描述
ABS() 返回数值表达式的绝对值。
ACOS() 返回的数值表达式的反余弦值。如果该值不在范围-1到1,返回NULL。
ASIN() 返回数值表达式的反正弦。如果值的范围不是在-1到1,返回NULL。
ATAN() 返回数值表达式的反正切值。
ATAN2() 返回传递给它的两个变量的反正切值。
BIT_AND() 返回位运算中和表达式中的所有位。
BIT_COUNT() 返回传递给它的二进制值的字符串表示形式。
BIT_OR() 返回按位或在传递表达式的所有位。
CEIL() 返回的最小整数值不小于传递数值表达式
CEILING() 返回的最小整数值不小于传递数值表达式
CONV() 将数值表达式转换从一个时基到另一个。
COS() 返回传递的数值表达式的余弦值,以弧度表示数字表达式。
COT() 返回传递数值表达式的余切。
DEGREES() 返回数值表达式从弧度转换为度。
EXP() 返回基的自然对数(E)传递的数值表达式。
FLOOR() 返回的最大整数的值但不大于传递数值表达式。
FORMAT() 返回一个数值表达式四舍五入到一个小数位数。
GREATEST() 返回输入表达式的最大值。
INTERVAL() 需要多个表达式EXP1,EXP2和EXP3等..如果exp1小于exp2返回0,如果exp1小于EXP3则返回1等。
LEAST() 当给定的两个或两个以上时,返回输入最小值。
LOG() 返回传递数值表达式的自然对数。
LOG10() 返回以10为底的对数所传递的数值表达式。
MOD() 返回一个表达式除以另一种表达方式的剩下部分(模)。
OCT() 返回传递数值表达式的八进制值的字符串表示形式。如果传递的值是NULL,返回NULL。
PI() 返回圆周率(PI)的值
POW() Returns the value of one expression raised to the power of another expression
POWER() Returns the value of one expression raised to the power of another expression
RADIANS() 返回传递表达式转换为弧度的值。
ROUND() 返回数值表达式四舍五入为整数。可以使用一个数的小数点四舍五入的表达式
SIN() 返回数值表达式以弧度的正弦值。
SQRT() 返回数值表达式的非负平方根。
STD() 返回数值表达式的标准差。
STDDEV() 返回数值表达式的标准差。
TAN() 返回以弧度表示的数值表达式的正切值。
TRUNCATE() 返回截断为数值EXP1 EXP2小数位。如果exp2是0,则结果没有小数点。
TRUNCATE(X,D)
这个函数的返回值截断到D的小数位数的X。如果D是0,则在小数点被除去。如果D为负,那么D的值的整数部分的值将被截断。请看下面的例子:
SQL>SELECT TRUNCATE(7.536432,2);+---------------------------------------------------------+| TRUNCATE(7.536432,2) |+---------------------------------------------------------+| 7.53 |+---------------------------------------------------------+1 row in set (0.00 sec)


ABS(X)
ABS()函数返回X的绝对值,请看下面的例子:
SQL> SELECT ABS(2);+---------------------------------------------------------+| ABS(2) |+---------------------------------------------------------+| 2 |+---------------------------------------------------------+1 row in set (0.00 sec)SQL> SELECT ABS(-2);+---------------------------------------------------------+| ABS(2) |+---------------------------------------------------------+| 2 |+---------------------------------------------------------+1 row in set (0.00 sec)
ACOS(X)
这个函数返回的反余弦值X,X的值必须介于0.1和1,否则将返回NULL。请看下面的例子:
SQL> SELECT ACOS(1);+---------------------------------------------------------+| ACOS(1) |+---------------------------------------------------------+| 0.000000 |+---------------------------------------------------------+1 row in set (0.00 sec)
ASIN(X)
ASIN()函数返回的反正弦X.X的值必须在0.1至1,否则返回NULL。
SQL> SELECT ASIN(1);+---------------------------------------------------------+| ASIN(1) |+---------------------------------------------------------+| 1.5707963267949 |+---------------------------------------------------------+1 row in set (0.00 sec)
ATAN(X)
这个函数返回X的反正切值
SQL> SELECT ATAN(1);+---------------------------------------------------------+| ATAN(1) |+---------------------------------------------------------+| 0.78539816339745 |+---------------------------------------------------------+1 row in set (0.00 sec)
ATAN2(Y,X)
此函数返回的反正切值的两个参数:X和Y是类似的Y / X的反正切值。
SQL> SELECT ATAN2(3,6);+---------------------------------------------------------+| ATAN2(3,6) |+---------------------------------------------------------+| 0.46364760900081 |+---------------------------------------------------------+1 row in set (0.00 sec)
BIT_AND(expression)
BIT_AND函数返回的按位“与”表达中的所有位。其基本前提是,如果两个对应的位是相同的,那么按位与运算将返回1,而如果它们是不同的,按位与运算将返回0。函数本身返回的64位整数值。如果没有匹配,那么它将返回18446744073709551615。分组的汽车制造商的价格列在下面的示例中执行BIT_AND的功能:
SQL> SELECT MAKER, BIT_AND(PRICE) BITS FROM CARS GROUP BY MAKER+---------------------------------------------------------+|MAKER BITS |+---------------------------------------------------------+|CHRYSLER 512 ||FORD 12488 ||HONDA 2144 |+---------------------------------------------------------+1 row in set (0.00 sec)
BIT_COUNT(numeric_value)
BIT_COUNT()函数返回的数量位活跃在numeric_value。下面的例子演示了如何使用的BIT_COUNT()函数返回数字的有效比特的数字范围:
SQL> SELECT BIT_COUNT(2) AS TWO, BIT_COUNT(4) AS FOUR, BIT_COUNT(7) AS SEVEN+-----+------+-------+| TWO | FOUR | SEVEN |+-----+------+-------+| 1 | 1 | 3 |+-----+------+-------+1 row in set (0.00 sec)
BIT_OR(expression)
BIT_OR()函数返回的按位“或”中表达的所有位。按位或功能的基本前提是,如果相应的位匹配,它返回0,而如果他们不这样做。该函数返回一个64位的整数,而且,如果没有匹配的行,则返回0。下面的例子执行BIT_OR()函数的车表列价格,按制造商分组:
SQL> SELECT MAKER, BIT_OR(PRICE) BITS FROM CARS GROUP BY MAKER+---------------------------------------------------------+|MAKER BITS |+---------------------------------------------------------+|CHRYSLER 62293 ||FORD 16127 ||HONDA 32766 |+---------------------------------------------------------+1 row in set (0.00 sec)
CEIL(X)
CEILING(X)
这些函数返回的最小整数的值不小于X,请看下面的例子:
SQL> SELECT CEILING(3.46);+---------------------------------------------------------+| CEILING(3.46) |+---------------------------------------------------------+| 4 |+---------------------------------------------------------+1 row in set (0.00 sec)SQL> SELECT CEIL(-6.43);+---------------------------------------------------------+| CEIL(-6.43) |+---------------------------------------------------------+| -6 |+---------------------------------------------------------+1 row in set (0.00 sec)
CONV(N,from_base,to_base)
CONV()函数的目的是将其转换之间的数字不同数量基准。该函数返回一个字符串值,Ň从from_base转换to_base。最低基数值是2,最大值是36。如果任何参数为NULL,则该函数返回NULL。考虑下面的例子,从基数为16数字5到基数2转换:
SQL> SELECT CONV(5,16,2);+---------------------------------------------------------+| CONV(5,16,2) |+---------------------------------------------------------+| 101 |+---------------------------------------------------------+1 row in set (0.00 sec)
COS(X)
这个函数返回X以弧度的余弦值。
SQL>SELECT COS(90);+---------------------------------------------------------+| COS(90) |+---------------------------------------------------------+| -0.44807361612917 |+---------------------------------------------------------+1 row in set (0.00 sec)
COT(X)
这个函数返回X的余切,考虑下面的例子:
SQL>SELECT COT(1);+---------------------------------------------------------+| COT(1) |+---------------------------------------------------------+| 0.64209261593433 |+---------------------------------------------------------+1 row in set (0.00 sec)
DEGREES(X)
这个函数返回X从弧度转换为度的值。
SQL>SELECT DEGREES(PI());+---------------------------------------------------------+| DEGREES(PI()) |+---------------------------------------------------------+| 180.000000 |+---------------------------------------------------------+1 row in set (0.00 sec)
EXP(X)
This function returns the value of e (the base of the natural logarithm) raised to the power of X.
SQL>SELECT EXP(3);+---------------------------------------------------------+| EXP(3) |+---------------------------------------------------------+| 20.085537 |+---------------------------------------------------------+1 row in set (0.00 sec)
FLOOR(X)
这个函数返回不大于X的最大整数值
SQL>SELECT FLOOR(7.55);+---------------------------------------------------------+| FLOOR(7.55) |+---------------------------------------------------------+| 7 |+---------------------------------------------------------+1 row in set (0.00 sec)
FORMAT(X,D)
FORMAT()函数是用来在以下格式来格式化数X:###,###,#####截断至D位小数。下面的例子演示了如何使用和输出的FORMAT()函数:
SQL>SELECT FORMAT(423423234.65434453,2);+---------------------------------------------------------+| FORMAT(423423234.65434453,2) |+---------------------------------------------------------+| 423,423,234.65 |+---------------------------------------------------------+1 row in set (0.00 sec)
GREATEST(n1,n2,n3,..........)
GREATEST()函数返回的最大价值的输入参数的集合(N1,N2,N3,第二等)。下面的示例使用GREATEST()函数返回从一组数值的最大数:
SQL>SELECT GREATEST(3,5,1,8,33,99,34,55,67,43);+---------------------------------------------------------+| GREATEST(3,5,1,8,33,99,34,55,67,43) |+---------------------------------------------------------+| 99 |+---------------------------------------------------------+1 row in set (0.00 sec)
INTERVAL(N,N1,N2,N3,..........)
INTERVAL()函数的N的值进行比较的值列表(N1,N2,N3,等)。该函数返回0,如果N
SQL>SELECT INTERVAL(6,1,2,3,4,5,6,7,8,9,10);+---------------------------------------------------------+| INTERVAL(6,1,2,3,4,5,6,7,8,9,10) |+---------------------------------------------------------+| 6 |+---------------------------------------------------------+1 row in set (0.00 sec)
LEAST(N1,N2,N3,N4,......)
LEAST()函数是相反的GREATEST()函数。其目的是为了返回至少值从值列表(N1,N2,N3,和等)的项。下面的示例演示正确使用和输出()函数:
SQL>SELECT LEAST(3,5,1,8,33,99,34,55,67,43);+---------------------------------------------------------+| LEAST(3,5,1,8,33,99,34,55,67,43) |+---------------------------------------------------------+| 1 |+---------------------------------------------------------+1 row in set (0.00 sec)
LOG(X)
LOG(B,X)
单参数版本的函数将返回X的自然对数,如果它被称为有两个参数,它返回的对数X的任意基B.考虑下面的例子:
SQL>SELECT LOG(45);+---------------------------------------------------------+| LOG(45) |+---------------------------------------------------------+| 3.806662 |+---------------------------------------------------------+1 row in set (0.00 sec)SQL>SELECT LOG(2,65536);+---------------------------------------------------------+| LOG(2,65536) |+---------------------------------------------------------+| 16.000000 |+---------------------------------------------------------+1 row in set (0.00 sec)
LOG10(X)
这个函数返回以10为底的对数X.
SQL>SELECT LOG10(100);+---------------------------------------------------------+| LOG10(100) |+---------------------------------------------------------+| 2.000000 |+---------------------------------------------------------+1 row in set (0.00 sec)
MOD(N,M)
这个函数返回剩余的N除以M.考虑下面的例子:
SQL>SELECT MOD(29,3);+---------------------------------------------------------+| MOD(29,3) |+---------------------------------------------------------+| 2 |+---------------------------------------------------------+1 row in set (0.00 sec)
OCT(N)
这相当于使用CONV(N,10,8),OCT() 函数返回的字符串表示的八进制数N.。
SQL>SELECT OCT(12);+---------------------------------------------------------+| OCT(12) |+---------------------------------------------------------+| 14 |+---------------------------------------------------------+1 row in set (0.00 sec)
PI()
这个函数只是简单地返回圆周率的值。 SQL内部存储双精度圆周率值。
SQL>SELECT PI();+---------------------------------------------------------+| PI() |+---------------------------------------------------------+| 3.141593 |+---------------------------------------------------------+1 row in set (0.00 sec)
POW(X,Y)
POWER(X,Y)
这两个函数返回Y的X的幂
SQL> SELECT POWER(3,3);+---------------------------------------------------------+| POWER(3,3) |+---------------------------------------------------------+| 27 |+---------------------------------------------------------+1 row in set (0.00 sec)
RADIANS(X)
这个函数返回X的值,转换为弧度。
SQL>SELECT RADIANS(90);+---------------------------------------------------------+| RADIANS(90) |+---------------------------------------------------------+|1.570796 |+---------------------------------------------------------+1 row in set (0.00 sec)
ROUND(X)
ROUND(X,D)
该函数返回x四舍五入到最接近的整数。如果第二个参数,D提供则该函数返回x四舍五入到D位小数。 D必须是正的或将被删除的小数点右侧的所有数字。请看下面的例子:
SQL>SELECT ROUND(5.693893);+---------------------------------------------------------+| ROUND(5.693893) |+---------------------------------------------------------+| 6 |+---------------------------------------------------------+1 row in set (0.00 sec)SQL>SELECT ROUND(5.693893,2);+---------------------------------------------------------+| ROUND(5.693893,2) |+---------------------------------------------------------+| 5.69 |+---------------------------------------------------------+1 row in set (0.00 sec)
SIGN(X)
这个函数返回的符号X(负,零或正)为-1,0或1。
SQL>SELECT SIGN(-4.65);+---------------------------------------------------------+| SIGN(-4.65) |+---------------------------------------------------------+| -1 |+---------------------------------------------------------+1 row in set (0.00 sec)SQL>SELECT SIGN(0);+---------------------------------------------------------+| SIGN(0) |+---------------------------------------------------------+| 0 |+---------------------------------------------------------+1 row in set (0.00 sec)SQL>SELECT SIGN(4.65);+---------------------------------------------------------+| SIGN(4.65) |+---------------------------------------------------------+| 1 |+---------------------------------------------------------+1 row in set (0.00 sec)
SIN(X)
这个函数返回X的正弦考虑下面的例子:
SQL>SELECT SIN(90);+---------------------------------------------------------+| SIN(90) |+---------------------------------------------------------+| 0.893997 |+---------------------------------------------------------+1 row in set (0.00 sec)
SQRT(X)
这个函数返回X的非负平方根,请看下面的例子:
SQL>SELECT SQRT(49);+---------------------------------------------------------+| SQRT(49) |+---------------------------------------------------------+| 7 |+---------------------------------------------------------+1 row in set (0.00 sec)
STD(expression)
STDDEV(expression)
STD()函数用于返回的标准差表达式。这是相当于采取的VARIANCE()的平方根的表达式。下面的示例计算价格的标准差列在我们的车表:
SQL>SELECT STD(PRICE) STD_DEVIATION FROM CARS;+---------------------------------------------------------+| STD_DEVIATION |+---------------------------------------------------------+| 7650.2146 |+---------------------------------------------------------+1 row in set (0.00 sec)
TAN(X)
这个函数返回参数X的正切值,以弧度表示。
SQL>SELECT TAN(45);+---------------------------------------------------------+| TAN(45) |+---------------------------------------------------------+| 1.619775 |+---------------------------------------------------------+1 row in set (0.00 sec)

你可能感兴趣的:(mysql)