MySQL一一函数一一数值函数

2023-12-28 14:24:50

咱今天讲的是MySQL函数中的数值函数,会有五小题和一个综合案例帮助大家理解

数值函数:

ceil向上取整:

? ? ? ? select? ceil(1.1);注意后面的小数位无论是1还是9最后向上取整都是2;

floor向下取整:

? ? ? ? select? floor(1.9); 注意后面的小数为无论是1还是9最后向下取整还是为1;

mod取模:

? ? ? ? select? mod(7,4);? //这是7除以4的余数

rand取随机数:这随机数取的是0~1之间的

? ? ? ? select? rand();

round四舍五入:

? ? ? ? select? round(2.345,2);? ?//保留两位小数

案例:

通过数据库的函数,生成六位数的随机码;(题目有一点难度,大家思考一下)

? ? ? ? 当我们看到随机两个字就会想到rand函数,但是rand函数生成的都是0~1的小数,如何让他可以生成六位数呢,我们只要乘以1000000就可以啦:

????????select? rand()*1000000;

? ? ? ? 但是还是有小数位该怎么办呢?这时候我们就可以用round函数把小数位设置为0就好啦

? ? ? ? select round(rand()*1000000,0);

但是还是有bug,如果说我们随机到一个0.057541的数那么它乘以1000000就会得到57541的五位数不符合我们的要求,如何让它变成六位数呢?

我们会想到上节课教的字符串函数中的lpad函数(字符串左侧填充)和rpad函数(字符串右侧填充)

MYSQL一一函数一一字符串函数
https://blog.csdn.net/m0_74197121/article/details/135168836?spm=1001.2014.3001.5502

? ? ? ? select? lpad(round(rand()*1000000,0),6,'0');? ? ? ? //这里我们选择lpad

文章来源:https://blog.csdn.net/m0_74197121/article/details/135170756
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。