一文总结MySQL中数学函数有哪些
作者:小冷coding 时间:2024-01-28 11:24:09
前言
MySQL提供了众多功能强大、方便易用的函数。使用这些函数可以极大地提高用户对数据库的管理效率。
MySQL中的函数包括数学函数、字符串函数、日期和时间函数、条件判断函数、系统信息函数、加密函数等。
MySQL函数简介
函数表示对输入参数值返回一个具有特定关系的值。
MySQL提供了大量丰富的函数,在进行数据库管理以及数据的查询等操作时将会经常用到各种函数。
通过对数据的处理,数据库的功能可以变得更加强大、更加灵活,满足不同用户的需求。
各类函数从功能方面主要分为数学函数、字符串函数、日期和时间函数、条件判断函数、系统信息函数和加密函数等。
数学函数
数学函数主要用来处理数值数据,主要的数学函数有绝对值函数、三角函数(包括正弦函数、余弦函数、正切函数、余切函数等)、对数函数、随机数函数等。在有错误产生时,数学函数将会返回空值(NULL)。
1.绝对值函数ABS(x)和返回圆周率的函数PI()
ABS(x)返回x的绝对值。操作例子求2、-3.3和-33的绝对值,输入语句如下:
正数的绝对值为其本身,例如2的绝对值为2;负数的绝对值为其相反数;
例如-3.3的绝对值为3.3,-33的绝对值为33。
PI()返回圆周率π的值。
**
**
默认显示的小数点后的位数是6位。比如你输入select pi(); 会返回结果是 3.141593.七位有效的数字。
2.平方根函数SQRT(x)和求余函数MOD(x,y)
SQRT(x)返回非负数x的平方根。如果输入3的平方等于9,因此9的平方根为3;40的平方根为6.324555320336759;而负数没有平方根,因此-6返回的结果为NULL。
MOD(x,y)返回x被y除后的余数,MOD()对带有小数部分的数值也起作用,它返回除法运算后的精确余数。
3.获取整数的函数CEIL(x)、CEILING(x)和FLOOR(x)
CEIL(x)和CEILING(x)的意义相同,返回不小于x的最小整数值,返回值转化为一个BIGINT。
例如输入-4.35为负数,不小于-4.35的最小整数为-4,因此返回值为-4;不小于4.35的最小整数为4,因此返回值为4。
4.获取随机数的函数RAND()和RAND(x)
RAND(x)返回一个随机浮点值v,范围在0到1之间(0≤v≤1.0)。若已指定一个整数参数x,则它被用作种子值,用来产生重复序列。
ROUND(x,y)返回最接近参数x的数,其值保留到小数点后面y位,若y为负值,则将保留x值到小数点左边y位。
ROUND(x,y)函数在截取值的时候会四舍五入,而TRUNCATE(x,y)直接截取值,不进行四舍五入。
5.函数ROUND(x)、ROUND(x,y)和TRUNCATE(x,y)
ROUND(x)返回最接近参数x的整数,对x值进行四舍五入。
ROUND(x,y)返回最接近参数x的数,其值保留到小数点后面y位,若y为负值,则将保留x值到小数点左边y位。
TRUNCATE(x,y)返回被舍去至小数点后y位的数字x。若y的值为0,则结果不带小数点或不带小数部分。若y设为负数,则截去(归零)x小数点左起第y位开始后面所有低位的值。
6.符号函数SIGN(x)
SIGN(x)返回参数的符号,x的值为负、零或正时返回结果依次为-1、0或1,比如输入:SIGN(-4)返回-1;SIGN(0)返回0;SIGN(4)返回1。
7.幂运算函数POW(x,y)、POWER(x,y)和EXP(x)
POW(x,y)或者POWER(x,y)函数返回x的y次方的结果值。
POW和POWER的结果是相同的,POW(2,2)和POWER(2,2)返回2的2次方,结果都是4; POW(2,-2)和POWER(2,-2)都返回2的-2次方,结果为4的倒数,即0.25。
EXP(x) 返回e的x次方的值。
8.对数运算函数LOG(x)和LOG10(x)
LOG(x)返回x的自然对数,x相对于基数e的对数。
10的2次方等于100,因此LOG10(100)返回结果为2;LOG10(-100)定义域非负,因此返回NULL。
9.角度与弧度相互转换的函数RADIANS(x)和DEGREES(x)
RADIANS(x)将参数x由角度转化为弧度。DEGREES(x)将参数x由弧度转化为角度。
10.正弦函数SIN(x)和反正弦函数ASIN(x)
SIN(x)返回x的正弦值,其中x为弧度值。ASIN(x)返回x的反正弦值,即正弦为x的值。若x不在-1~1的范围之内,则返回NULL。
查询代码如下:
select mod (12,3.5);
select ceil(-4.35),CEILING(-4.55),FLOOR(3.145);
select RAND(3),ROUND(3.5501124455,2)
select ROUND(4),ROUND(4.1523123,2),TRUNCATE(5.144552,2)
select SIGN(4),SIGN(-4),SIGN(0)
select POW(2,2),POWER(2,2),EXP(2)
select LOG(100),LOG10(100),LOG(-100)
select RADIANS(45),DEGREES(0.785)
select SIN(20),ASIN(-0.1),ASIN(2)
写到最后
来源:https://blog.csdn.net/leng_yong/article/details/128879066