日志文章

2008年03月04日 12:24:15

联合删除多个表

假设有两个表OrderHeader和OrderDetail 通过主键OrderNumber关联,OrderHeader中存在字段Qty,而OrderDetail表中没有,若要删除OrderHeader中Qty>100的记录,同时删除OrderDetail中相对应的记录,过程如下:
 DECLARE @temp TABLE(OrderNumber NVARCHAR(36))

DELETE OrderHeader
   --- sql2005 新增功能
Output deleted.OrderNumber
INTO @temp
FROM OrderHeader
WHERE Qty>100

DELETE OrderDetail
WHERE OrderNumber IN(SELECT OrderNumber FROM @temp)


Tags: delete  

类别: database |  评论(0) |  浏览(2112) |  收藏
发表评论