php - 在 MySQL 中使用一个查询插入多个相似的行

标签 php mysql sql

考虑一个包含 2 个字段的表:

 tbl(Id int primary key,Name varchar(100))

假设此表包含一行 Id=3 和一些未知 Name

 Id   |   Name
 ---------------
 3    |   *****

我有一个 Id 数组,例如:array(4,6,7,10) 如何通过一次查询将这些带有 Id=3 行的 NameId 放入该表中,以便结果表为:

 Id   |   Name
 ---------------
 3    |   *****
 ----------------
 4    |   *****
 ----------------
 6    |   *****
 ----------------
 7    |   *****
 ----------------
 10   |   *****

我无法在查询中使用Name 的值。

我正在考虑这样的查询:

insert into tbl(Id,Name) select (4,6,7,10),Name from tbl

最佳答案

您需要 2 个查询,第一个查询名称,第二个查询进行多行插入

INSERT INTO Table ( Column1, Column2 ) VALUES
( Value1, Value2 ), ( Value1, Value2 )

关于php - 在 MySQL 中使用一个查询插入多个相似的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30005825/

相关文章:

php - PHP 中的数组结果

mysql - 使用 Table.Column 是否可以提高性能?

php - 在 cakephp 的 xml 帮助程序中找不到 xml 类

php - 我可以将 php 附加到类(class)中吗?

MySQL 查询单个表以查找多行

mysql - 为什么我的 sql 表会保留已删除的 ID?

mysql - 如何避免查询中的条件多重 SELECT

sql - 如何在 SQL 中将 3 列分组为一列

php - 验证用户输入的质量

javascript - Ajax 未将登录表单的数据传递到 PHP 进程文件