sql - 在Insert语句( 嵌套插入) 上,插入基于

  显示原文与译文双语对照的内容

常见的insert语句是。


INSERT INTO tbl_name (ID) VALUES (1)

我想要实现的是使用另一个表中另一个插入语句插入一个 ID 。 它看起来像这样


INSERT INTO tbl_name VALUES (INSERT INTO tbl_name2 (ID) VALUES (1))

我试过了,但这给了我错误。


INSERT INTO tblReport_OPA (ID_Main) VALUES (INSERT INTO tblReport_OPF (ID_Main) VALUES (1))

我目前正在 VB.Net 2010和 SQL Express 2005下开发

时间: 作者:

你可能可以使用输出子句,如下所示:


INSERT INTO tblReport_OPF (ID_Main) 
 OUTPUT Inserted.Id_Main
 INTO tblReport_OPA
SELECT 1 as Id_Main

注意,你必须使用 SELECT选择,而不是

作者:

Opyionally可以使用合并。


merge into #a T1
using (select -1 as ID)Q on Q.ID=T1.ID
WHEN NOT matched by target then
insert(id) values(1)
output
inserted.id
INTO #b;

作者:
...