![bf67794bbc1effcd23addeaf32159559.png](https://img-blog.csdnimg.cn/img_convert/bf67794bbc1effcd23addeaf32159559.png)
函数表示对输入参数值返回-一个具有特定关系的值,MySQL提供了大量丰富的函数,在进行数据库管理以及数据的查询和操作时将会经常用到各种函数。通过对数据的处理,数据库功能可以变得更加强大,更加灵活地满足不同用户的需求。各类函数从功能方面主要分为以下几类:数学函数、字符串函数、日期和时间函数、条件判断函数、系统信息函数和加密函数等。
今天咱们就来介绍一下MySQL的数学函数。
数学函数主要用来处理数值数据,主要的数学函数有:绝对值函数、三角函数(包括正弦函数、余弦函数、正切函数、余切函数等)、对数函数、随机数函数等。在有错误产生时,数学函数将会返回空值NULL。
![7be38a3e6c4f9356f089b3ef0b73f077.png](https://img-blog.csdnimg.cn/img_convert/7be38a3e6c4f9356f089b3ef0b73f077.png)
绝对值 函数ABS(x)和返回圆周率的函数PI()
ABS(X)返回X的绝对值
求2, -3.3 和-33的绝对值,输入语句如下:
![288dab72c6a486d6d352934fe5419c20.png](https://img-blog.csdnimg.cn/img_convert/288dab72c6a486d6d352934fe5419c20.png)
正数的绝对值为其本身,2的绝对值为2;负数的绝对值为其相反数, -3.3 的绝对值为3.3; -33的绝对值为33。
PI()返回圆周率π的值。默认的显示小数位数是6位。.
返回圆周率值,输入语句如下:
![585b0411512ad829482c10cc89aa847e.png](https://img-blog.csdnimg.cn/img_convert/585b0411512ad829482c10cc89aa847e.png)
返回结果保留了7位有效数字。
平方根函数SQRT(x)和求余函数MOD(x,y)
SQRT(x)返回非负数x的二次方根。
求9,40和-49的二次平方根,输入语句如下:
![73e378709c5a0526e6c0b96dbfe1c04c.png](https://img-blog.csdnimg.cn/img_convert/73e378709c5a0526e6c0b96dbfe1c04c.png)
3的平方等于9,因此9的二次平方根为3; 40 的平方根为6.324555320336759;而负数没有平方根,因此-49返回的结果为NULL。
MOD(x,y)返回x被y除后的余数,MOD0对于带有小数部分的数值也起作用,它返回除法运算后的精确余数。
对MOD(31,8),MOD(234, 10),MOD(45.5,6)进行求余运算, 输入语句如下:
![c90d8e84b7c14f454c90174cb29123a3.png](https://img-blog.csdnimg.cn/img_convert/c90d8e84b7c14f454c90174cb29123a3.png)
获取整数的函数CEIL(x)、CEILING(x)和 FLOOR(x)
CEIL(x)和CEILING(x)意 义相同,返回不小于x的最小整数值,返回值转化为一个BIGINT。
使用CEILING函数返回最小整数,输入语句如下:
![0addc9d4de4a9d8d0d52690bd29e3929.png](https://img-blog.csdnimg.cn/img_convert/0addc9d4de4a9d8d0d52690bd29e3929.png)
-3.35为负数,不小于-3.35 的最小整数为-3,因此返回值为-3;不小于3.35的最小整数为4,因此返回值为4。
FLOOR(x)返回不大于x的最大整数值,返回值转化为一个BIGINT.
使用FLOOR函数返回最大整数,输入语句如下:
![a453eb2c869dd3197219b817746273f1.png](https://img-blog.csdnimg.cn/img_convert/a453eb2c869dd3197219b817746273f1.png)
-3.35 为负数,不大于-3.35 的最大整数为-4,因此返回值为-4;不大于3.35的最大整数为3,因此返回值为3。
获取随机数的函数RAND()和RAND(x)
RAND(x)返回一个随机浮点值v,范围在0到1之间(即0≤v≤1.0)。 若已指定一个整数参数x,则它被用作种子值,用来产生重复序列。
使用RAND(函数产生随机数,输入语句如下:
![f6946759c62c58c708b977b6e4cd0ea6.png](https://img-blog.csdnimg.cn/img_convert/f6946759c62c58c708b977b6e4cd0ea6.png)
可以看到,不带参数的RAND0每次产生的随机数值是不同的。
使用RAND(x)函数产生随机数,输入语句如下:
![791fd7e16e349aaa1422f5efb8ff2018.png](https://img-blog.csdnimg.cn/img_convert/791fd7e16e349aaa1422f5efb8ff2018.png)
可以看到,当RAND(x)的参数相同时,将产生相同的随机数,不同的x产生的随机数值不同。
函数ROUND(x)、ROUND(x,y)和 TRUNCATE(x,y)
ROUND(x)返回最接近于参数x的整数,对x值进行四舍五入。
使用ROUND(x)函数对操作数进行四舍五入操作,输入语句如下:
![753b8782a57e4ee4f3b76d2c5ee06347.png](https://img-blog.csdnimg.cn/img_convert/753b8782a57e4ee4f3b76d2c5ee06347.png)
可以看到,四舍五入处理之后,只保留了各个值的整数部分。
ROUND(x,y)返回最接近于参数x的数,其值保留到小数点后面y位,若y为负值,则将保留x值到小数点左边y位。
使用ROUND(x,y)函数对操作数进行四舍五入操作,结果保留小数点后面指定y位,输入语句如下:
![8f6e446e2ebcdb61714c692f2d82b033.png](https://img-blog.csdnimg.cn/img_convert/8f6e446e2ebcdb61714c692f2d82b033.png)
![b7b99e3f74e9c11968876c2d23ed2c97.png](https://img-blog.csdnimg.cn/img_convert/b7b99e3f74e9c11968876c2d23ed2c97.png)
ROUND(1.38, 1)保留小数点后面1位,四舍五入的结果为1.4; ROUND(1.38, 0)保留小数点后面0位,即返回四舍五入后的整数值; ROUND(232.38, -1)和ROUND (232.38, 2)分别保留小数点左边1位和2位。
TRUNCATE(x,y)返回被舍去至小数点后y位的数字x。若y的值为0, 则结果不带有小数点或不带有小数部分。若y设为负数,则截去(归零) x小数点左起第y位开始后面所有低位的值。
使用TRUNCATE(x,y)函数对操作数进行截取操作,结果保留小数点后面指定y位,输入语句如下:
![64c4d62a618d86d065d40a295e479efc.png](https://img-blog.csdnimg.cn/img_convert/64c4d62a618d86d065d40a295e479efc.png)
TRUNCATE(1.31,1)和TRUNCATE(1.99,1)都保留小数点后1位数字,返回值分别为1.3 和1.9; TRUNCATE(1.99,0)返回整数部分值1; TRUNCATE(19.99,-1)截去 小数点左边第1位后面的值,并将整数部分的1位数字置0,结果为10。
正弦函数SIN(x)和反正弦函数ASIN(x)
SIN(x)返回x正弦,其中x为弧度值。
使用SIN函数计算正弦值,输入语句如下:
![5e329aef9cb54e6f4189ffbd8752d403.png](https://img-blog.csdnimg.cn/img_convert/5e329aef9cb54e6f4189ffbd8752d403.png)
![705cd8e895b644ae551279d8c47e498c.png](https://img-blog.csdnimg.cn/img_convert/705cd8e895b644ae551279d8c47e498c.png)
ASIN(x)返回x的反正弦,即正弦为x的值。若x不在-1到1的范围之内,则返回NULL.
使用ASIN函数计算反正弦值,输入语句如下:
![b9fa38c9e57a0b911827c5bf38262b96.png](https://img-blog.csdnimg.cn/img_convert/b9fa38c9e57a0b911827c5bf38262b96.png)
由结果可以看到,函数ASIN和SIN互为反函数; ASIN(3)中的 参数3超出了正弦值的范
围,因此返回NULL。
余弦函数COS(x)和反余弦函数ACOS(x)
COS(x)返回x的余弦,其中x为弧度值。
使用COS函数计算余弦值,输入语句如下:
![a13e064abb49e1717b45206c4ff2f7a9.png](https://img-blog.csdnimg.cn/img_convert/a13e064abb49e1717b45206c4ff2f7a9.png)
由结果可以看到,COS(0)值为1; COS(PI0)值为-1; COS(1)值为 0.540302305868 1398。
ACOS(x)返回x的反余弦,即余弦是x的值。若x不在-1~1的范围之内,则返回NULL。
使用ACOS函数计算反余弦值,输入语句如下:
![a9ee3608283c3085b5ed1b77c2041089.png](https://img-blog.csdnimg.cn/img_convert/a9ee3608283c3085b5ed1b77c2041089.png)
由结果可以看到,函数ACOS和COS互为反函数。
正切函数、反正切函数和余切函数
TAN(x)返回x的正切,其中x为给定的弧度值。
使用TAN函数计算正切值,输入语句如下:
![05ae18908201e2ead7cfcf03b0fa7528.png](https://img-blog.csdnimg.cn/img_convert/05ae18908201e2ead7cfcf03b0fa7528.png)
ATAN(x)返回x的反正切,即正切为x的值。
使用ATAN函数计算反正切值,输入语句如下:
![860b4c32381eb2631e2556a23e22dd58.png](https://img-blog.csdnimg.cn/img_convert/860b4c32381eb2631e2556a23e22dd58.png)
由结果可以看到,函数ATAN和TAN互为反函数。
COT(x)返回x的余切。
使用COTO函数计算余切值,输入语句如下:
![a9aec0b63d603a9ff1d01556fac2c820.png](https://img-blog.csdnimg.cn/img_convert/a9aec0b63d603a9ff1d01556fac2c820.png)
由结果可以看到,函数COT和TAN互为倒函数。
这就是今天为大家整理的MySQL基础的数学函数,先由基础出发,后续咱们会带来更深入的学习内容。
喜欢请多多点赞评论转发,关注小编,你们的支持就是小编最大的动力~~~