Mysql 如何插入随机数
我是MySql新手,我需要在表中插入10000个随机的两位数。有没有简单的方法可以做到这一点?如前所述使用Mysql 如何插入随机数,mysql,Mysql,我是MySql新手,我需要在表中插入10000个随机的两位数。有没有简单的方法可以做到这一点?如前所述使用RAND()。要生成10到99之间的2位随机数,请使用FLOOR(10+(RAND()*90))尝试以下方法: DELIMITER $$ CREATE PROCEDURE random_fill( IN cnt INT ) BEGIN fold: LOOP IF cnt < 1 THEN LEAVE fold;
RAND()
。要生成10到99之间的2位随机数,请使用FLOOR(10+(RAND()*90))
尝试以下方法:
DELIMITER $$
CREATE PROCEDURE random_fill( IN cnt INT )
BEGIN
fold: LOOP
IF cnt < 1 THEN
LEAVE fold;
END IF;
INSERT INTO foo ( bar ) VALUES ( 9 + CEIL( RAND() * 90 ) );
SET cnt = cnt - 1;
END LOOP fold;
END$$
DELIMIMTER ;
您需要更改的是这一行:
INSERT INTO foo ( bar ) VALUES ( CEIL( RAND() * higher ) );
用数据库中存在的内容替换
foo
和bar
。可以创建一个过程,其中表和行的名称也作为参数提供,但这需要动态地CONCAT
查询。。看起来既有黑客味又丑陋。写一个带循环的存储过程可能是重复的。我在回答中使用了你的公式+1为你,这样我就可以避免侵犯版权!!!我建议在那里进行交易。没有它,100K插入超时22k,有了它,在我的开发机器上,100K花费了4.047秒。
INSERT INTO foo ( bar ) VALUES ( CEIL( RAND() * higher ) );