MySQL-生成随机数

这篇博客介绍了如何在MySQL中通过结合RAND(), ROUND(), 和 LPAD() 函数生成一个四位数的随机数。首先,使用RAND()得到0到1之间的浮点数,然后将其乘以10000并四舍五入,最后用LPAD()函数确保结果左侧填充0以达到四位数的长度。这种方法可以灵活应用于需要随机数的场景。
摘要由CSDN通过智能技术生成

需求:

  • 通过数据库的函数随机生成一个4位数的随机数。


涉及知识点:

  • ROUD()函数,返回0~1的随机小数
  • ROUND(x,y),求参数x的四舍五入值,保留y位小数
  • LPAD(str,n,pad),左填充,用字符串pad对str的左边进行填充,达到n个字符串长度

操作步骤:

1. 使用一个 rand() 函数得到一个0~1的浮点数

select rand();
  • 运行结果: 

 2. 为生成一个4位数的随机数(不含小数),现需将函数结果乘10000(如需生成n位数则乘10**n次方),在使用 round() 函数对结果取0位小数。

select round(rand() * 10000, 0);
  • 运行结果: 

 3. 当前结果会因为rand()生成中的随机小数第一位为0,而导致最后得出数只有三位。为此还需使用 lpad() 函数来补0,使其达到4位数。

  • 如下所示,只生成三位数。

  •  使用 lpad() 函数后:


 代码:

select lpad(round(rand( ) * 10000, 0), 4, '0');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值