gpt4 book ai didi

mysql - 如何生成一次插入2000条记录的mysql查询?

转载 作者:行者123 更新时间:2023-11-29 04:12:08 25 4
gpt4 key购买 nike

这是我的场景,

我有 table

ID(PK)  TYPE(PK)
01 3
02 3
03 3
04 3

现在我必须插入 ID 最多 1000 类型 3...有没有自动执行此操作的选项???

最佳答案

使用存储过程

DELIMITER $$

CREATE PROCEDURE insertMany(Pstart_id INT, Pend_id INT, Ptype INT)
BEGIN
DECLARE i INT;
IF (pstart_id > pend_id) THEN BEGIN
SET i = PEnd_id;
SET Pend_id = Pstart_id;
SET Pstart_id = Pend_id;
END; END IF;
SET i = Pstart_id;
WHILE I <= Pend_id DO BEGIN
INSERT INTO table1 (id, `type`) VALUES (i, Ptype);
SET i = i + 1;
END; END WHILE;
END $$

DELIMITER ;

SELECT @first_id:= max(id)+1, @last_id:= max(id)+2001 FROM table1;
CALL InsertMany(@first_id, @last_id, 3);

这比使用 php 循环更快,因为您不会通过网络发送 1000 个插入查询。

或者你可以看看这个问题:How to select a single row a 100 million x

关于mysql - 如何生成一次插入2000条记录的mysql查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7513682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com