2013-05-01 54 views
2

我想知道在单个查询中使用多个值是否有优势或劣势,或者是否最好将这些值插入到单独的查询中?MySql在单个查询中插入多个值

例如,假设我有表tester_tbl具有int类型两者,id1id2的2列分别与我想2, 3, 4插入值到列id2和值1到列id1,像这样:

+-----+-----+ 
| id1 | id2 | 
+-----+-----+ 
| 1 | 2 | 
| 1 | 3 | 
| 1 | 4 | 
+-----+-----+ 

来完成它,你建议我做什么?使用插入这些值的单个查询,因此INSERT INTO tester_tbl (id1, id2) VALUES (1, 2), (1,3), (1,4);,或做倍数查询中插入这些值,所以

`INSERT INTO tester_tbl (id1, id2) VALUES (1, 2);`, 
`INSERT INTO tester_tbl (id1, id2) VALUES (1, 3);`, 
`INSERT INTO tester_tbl (id1, id2) VALUES (1, 4);` 

如果有人能告诉我一个更好的方法来做到这一点,我会很感激。

此致敬礼。

回答

3

根据documentation,在一个查询中插入多个值的MySQL效率更高,速度更快。

+0

非常感谢@约旦,这非常有帮助,我很感激。 – oletob 2013-05-01 15:59:39

+0

不客气。很高兴我能帮上忙。 – Jordan 2013-05-01 16:00:06

1

第一种方式更好。效率更高,速度更快,尤其是对于许多刀片。快得多。我从经验讲。

+0

谢谢你的回答@Uncle Iroh,我很感激你。 – oletob 2013-05-01 15:57:30

0

在我看来,您可能希望使用不同的查询的唯一原因是,如果您需要逐个强制实施事务完整性。除了需要之外,请使用单个查询。

+0

非常感谢您的回答。 – oletob 2013-05-01 16:00:54