Sql 如何循环执行select语句的结果并触发另一个查询?
对不起,如果我的标题很糟糕,我想不出如何更好地表达它 我有以下资料:Sql 如何循环执行select语句的结果并触发另一个查询?,sql,sql-server,tsql,foreach,Sql,Sql Server,Tsql,Foreach,对不起,如果我的标题很糟糕,我想不出如何更好地表达它 我有以下资料: select @AMTrackid = AudioMediaTrackId from AudioMediaTrack where AudioMediaId = @Aid delete from AudioMediaTrackArtist where AudioMediaTrackId = @AMTrackid 此时,我想从AudioMediaTrackArtister中删除返回的每个@AMTrackid 现在确定我
select @AMTrackid = AudioMediaTrackId from AudioMediaTrack where AudioMediaId = @Aid
delete from AudioMediaTrackArtist where AudioMediaTrackId = @AMTrackid
此时,我想从AudioMediaTrackArtister中删除返回的每个@AMTrackid
现在确定我该怎么做
提前谢谢 除了@M.Ali answer,
delete
语句还有一个from
部分,您可以将要从中删除的表与任何表连接起来
delete from AudioMediaTrackArtist
where AudioMediaTrackId IN (
select AudioMediaTrackId
from AudioMediaTrack
where AudioMediaId = @Aid
)
因此,您可以使用这种方法删除单个delete语句中的记录
delete AudioMediaTrackArtist
from AudioMediaTrackArtist join AudioMediaTrack
on AudioMediaTrackArtist.AudioMediaTrackId = AudioMediaTrack.AudioMediaTrackId
where AudioMediaTrack.AudioMediaId = @Aid