MySql在单个查询中插入多个值

时间:2013-05-01 15:44:28

标签: mysql sql-insert

我想知道在单个查询中使用多个值是否有任何优点或缺点,或者是否更好地将这些值插入单独的查询中?

例如,假设我有表tester_tbl,其中有两列类型为int id1id2,我想要插入值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 个答案:

答案 0 :(得分:3)

根据documentation,MySQL在一个查询中插入多个值更有效,更快。

答案 1 :(得分:1)

第一种方式更好。效率更高,速度更快,尤其是许多刀片。快得多。我是根据经验说的。

答案 2 :(得分:0)

在我看来,您可能想要使用单独查询的唯一原因是,您需要单独强制执行每个查询的事务完整性。除此之外,请使用单个查询。