MySQL获取随机数,获取随机字符串

  • Post author:
  • Post category:mysql


1、获取随机数

FLOOR(RAND()*a+b) #b到a+b的随机数

2、获取随机字符串

案例:向表中插入指定个数的随机字符串

CREATE PROCEDURE myp1(IN insertCount INT)
BEGIN
	DECLARE i INT DEFAULT 1;
	DECLARE str VARCHAR(26) DEFAULT 'abcdefghijklmnopqrstuvwsyz';
	DECLARE startIndex INT DEFAULT 1;#起始索引
	DECLARE len INT DEFAULT 1;#字符串长度
	WHILE i<=insertCount DO
		#产生一个随机整数,作为起始索引
		SET startIndex = FLOOR(RAND()*26+1);#1-26
		#随机长度
		SET len=IF((26-startIndex+1)>20,FLOOR(RAND()*20+1),FLOOR(RAND()*(26-startIndex+1)+1));#1~26-startIndex+1且小于20
		#SUBSTR(str,startIndex,len)获取随机长度随机起始索引的字符串
		INSERT INTO stringcontent(content) VALUES (SUBSTR(str,startIndex,len));
		SET i=i+1;
	END WHILE;
END $

演示

在这里插入图片描述



版权声明:本文为weixin_44300779原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。