MySQL数值型函数
Posted Lin王发林
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL数值型函数相关的知识,希望对你有一定的参考价值。
mysql五大类函数,前面已经介绍了聚合函数和字符串函数,还有数值型函数、时间日期函数和控制流函数,这篇介绍一下数值型函数,数值型函数主要就是用来对数值型数据进行处理,在实际使用中还是有很多用处。
函数名称 | 作用 |
ABS | 求绝对值 |
SQRT | 求二次方根 |
MOD | 求余数 |
CEIL和CEILING | 两个函数功能相同,都是返回不小于参数的最小整数,即向上取整 |
FLOOR | 向下取整,返回值转化为一个BIGINT |
RAND | 生成一个0~1之间的随机数,传入整数参数是,用来产生重复序列 |
ROUND | 对所传参数进行四舍五入 |
POW和POWER | 两个函数的功能相同,都是所传参数的次方的结果值 |
TRUNCATE | 对数值n进行截断 |
LEAST | 返回最小值 |
GREATEST | 返回最大值 |
【ABS】
绝对值函数ABS(x)返回x的绝对值。正数的绝对值是其本身,负数的绝对值为其相反数,0的绝对值是0。
求分数的绝对值,SQL语句如下↓
SELECT
name,
score 原始分数,
ABS(score)
FROM
scores;
【SQRT】
平方根函数SQRT(x)返回非负数x的二次方根。负数没有平方根,返回结果为 NULL。
SELECT
name,
score 原始分数,
SQRT(score)
FROM
scores;
【MOD】
求余函数MOD(x,y)返回x被y除后的余数,MOD()对于带有小数部分的数值也起作用,它返回除法运算后的余数。
求分数除以二的余数,SQL语句如下↓
SELECT
name,
score 原始分数,
MOD(score,2)
FROM
scores;
【CEIL和CEILING】
向上取整函数CEIL(x)和CEILING(x)的意义相同,返回不小于x的最小整数值,返回值转化为一个BIGINT。
SELECT
name,
score 原始分数,
CEIL(score),CEILING(score)
FROM
scores;
【FLOOR】
向下取整函数FLOOR(x)函数返回小于x的最大整数值。
SELECT
name,
score 原始分数,
FLOOR(score)
FROM
scores;
【RAND】
RAND()函数可以产生一个在0和1之间的随机数。
生成0-1之间的小数和0-100之间的整数。
SELECT
RAND(),
round(RAND()*100,0)
【ROUND】
ROUND(x)函数返回最接近于参数x的整数;ROUND(x,y)函数对参数x进行四舍五入的操作,返回值保留小数点后面指定的y位。
SELECT
name,
score 原始分数,
ROUND(score,1)
FROM
scores;
【POW和POWER】
POW(x,y)函数和POWER(x,y)函数用于计算x的y次方。
SELECT
name,
score 原始分数,
POW(score,2),POWER(score,2)
FROM
scores;
【TRUNCATE】
TRUNCATE(n,d) 对数值n进行截断,d为正数时保留小数点后d位,d为0时保留整数位,d为负数时保留小数点前d位。
SELECT
name,
score 原始分数,
TRUNCATE(score,1),TRUNCATE(score,0),TRUNCATE(score,-1)
FROM
scores;
【LEAST】
LEAST(x,y,...) 返回最小值。
SELECT
name,
score 原始分数,
LEAST(score,50)
FROM
scores;
【GREATEST】
GREATEST(x,y,...) 返回最大值。
SELECT
name,
score 原始分数,
GREATEST(score,50)
FROM
scores;
End
以上是关于MySQL数值型函数的主要内容,如果未能解决你的问题,请参考以下文章