我有一个状态表和另一个包含附加数据的表。我的对象ID是状态表中的pk,所以我需要将它们插入到每个新行的附加数据表中。
我需要为每个新列表在我的状态栏中插入一个新行,只包含常量。
declare @temp TABLE(listingID int)
insert into statusTable(status, date)
output Inserted.listingID into @temp
select 1, getdate()
from anotherImportedTable
这使我有足够的新列表ID可以使用。
现在,我需要将实际的列表数据插入到另一个表中,并将每一行映射到其中一个列表ID-
insert into listingExtraData(listingID, data)
select t.listingID, a.data
from @temp t, anotherImportedTable a
现在这显然不起作用,因为其他数据表和@temp中的ID是不相关的…所以插入的行太多了。
如何插入每行
anotherImportedTable
进入之内
listingExtraData
以及一个独特的新创造
listingID
?我能在我做这个的时候触发更多的SQL吗?
output
在SQL的第一个块中?
编辑
:感谢您迄今为止的输入,表如下所示:
其他重要的
:
data
可状态
:
listingID (pk), status, date
列表索引数据
:
data, listingID
你看,我只想在
statusTable
每行
其他重要的
,然后放一个
列表ID
有一行来自
其他重要的
进入之内
列表索引数据
…我在想我可能不得不使用光标?