一. MySQL的函数
MySQL数据库里面,提供了很多方法/函数,用于处理数据。
MySQL中函数根据不同的数据处理,提供了不同的函数:
- 数学函数
- 字符串函数
- 日期/时间函数
- 条件判断函数
- 系统信息函数
- 加密函数
- 聚集函数
- 其他函数
由于函数非常重要,所以老蝴蝶把每一个函数都当成一个独立的章节进行详细讲解。
这一章节先讲解数学函数,需要相应的数学知识。
只连接数据库即可,不需要用哪个表。
二. MySQL 的数学函数
二.一 绝对值函数 ABS(x)
用于查询绝对值。
select abs(-2),abs(0),abs(2),abs(-2.7),abs(2.7);
正数的绝对值是其本身,负数的绝对值为 -(本身)。 0的绝对值是0.
二.二 返回圆周率函数 PI()
用于查询圆周率 pi
select pi();
为 3.141593 . 保留六位小数。
二.三 平方根 sqrt(非负数 X)
用于查询 非负数的平方根
select sqrt(4),sqrt(9.9),sqrt(0),sqrt(-4);
负数的平方根,没有。 显示为null.
二.四 求余函数 Mod(x,y)
用于查询 x%y 的值。
select mod(8,4), mod(4.5,2),mod(231,10);
小数的话,也可以用 mod(x,y) 函数进行取余。
二.五 向上取整 ceil(x) 和ceiling(x)
将一个数向上取整。 ceil(x) 和ceiling(x) 用法是一样的。
select ceil(4.2),ceil(4.9),ceil(4),ceil(0),ceil(-4.2),ceil(-4.9),ceil(-5.0);
与 java 中 Math.ceil(x) 方法相同。
二.六 向下取整 floor(x)
将一个数字向下取整。
select floor(4.2),floor(4.9),floor(4),floor(0),floor(-4.2),floor(-4.9),floor(-5.0);
与 java 中 Math.floor(x) 方法相同。
二.七 随机数 rand() 和rand(x)
产生一个随机数。 rand() 产生是 0~1 的, rand(x) 是以x 数进行随机生成。
其中,x 只是一个随机数,并不是随机的最大值。
只是当 x一样时,生成的随机数相同。
select rand(),rand(), rand(10),rand(10),rand(100);
与 java 中的 Random() 类相同。
二.八 四舍五入函数 round(x) 和round(x,y)
用于四舍五入生成。 其中,round(x) 用于生成整数,相当于 round(x,0). round(x,y) 由y来指定小数。 可以为负。
round(x) :
select round(4.0),round(4.4),round(4.6),round(-4.0),round(-4.2),round(-4.9);
round(x,y):
select round(4.4,0),round(4.234,2),round(4.239,2), round(234.23,-1);