一些mysql的瞎逼操作

tech2026-01-22  3

批量插入

DROP PROCEDURE IF EXISTS pro_insert; DELIMITER $ CREATE PROCEDURE pro_insert() BEGIN DECLARE i INT DEFAULT 1; set @j = 'INSERT INTO test(name) VALUES'; WHILE i<=10000 DO SET @j=CONCAT(@j,'(',CEILING(RAND()*10000),'),'); SET i=i+1; END WHILE; set @j = SUBSTRING(@j,1,LENGTH(@j)-1); prepare stmt from @j; execute stmt; END $ CALL pro_insert

环境:win7+8g+i5-4690+4核 时间:1.367s(对比其他人写的时间一万条随机数据有点久了)

顺便展示点垃圾操作

DROP PROCEDURE IF EXISTS pro_insert; DELIMITER $ CREATE PROCEDURE pro_insert() BEGIN DECLARE i INT DEFAULT 1; WHILE i<=10000 DO INSERT INTO test(name) VALUES (CEILING(RAND()*10000)); END WHILE; END $ CALL pro_insert

时间:>5min,我不想等了

区别 insert … values(),(),() insert … values(),insert … values(),insert … values()

最新回复(0)