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

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


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

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


我有一个Id数组,例如:array(4,6,7,10)
如何通过一个查询将具有Id行的Name的这些Id=3放入此表,因此结果表将为:

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


我不能在查询中使用Name的值。

我在想这样的查询:

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

最佳答案

您需要2个查询,第1个获取名称,第2个进行多行插入

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

09-10 03:06
查看更多