我有大约 360 行数据,我需要为 SQL 进行 360 次查询,有没有什么快速的方法可以将所有数据放入一个查询中,而不必将它们全部分开,例如这里只有 3我拥有的数据行:
1,81,32
1,101,82
1,60,65
我必须将此数据放入查询中,以便这 3 个看起来像:
INSERT INTO `Fixtures` (weeks, HomeID, AwayID) Values (1,81,32);
INSERT INTO `Fixtures` (weeks, HomeID, AwayID) Values (1,101,82);
INSERT INTO `Fixtures` (weeks, HomeID, AwayID) Values (2,60,65);
但是我有 360 行这样的代码,所以很难将它们全部放入查询的 1 到 1 中,有没有更快的方法可以做到这一点,就像只用一个查询将它们全部插入一样?
最佳答案
您通常可以使用 INSERT...SELECT 语法。
此语法因数据库而异,但通常类似于:
INSERT INTO `Fixtures` (weeks, HomeID, AwayID)
select 1,81,32
union all select 3,31,22
另一种变体是:
INSERT INTO Fixtures
(`weeks`, `HomeID`, `AwayID`)
VALUES
(1, 81, 32),
(3, 31, 22)
;
关于php - 使用大量数据创建查询的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13179326/