[英]SQL update column based on another table
有什么方法可以基於另一個表的列更新表?
例如,如果我使用AdventureWorks2008R2.Production.Product
表,則有500種產品,每個產品都有一個ID ProductID
和產品編號ProductNumber
。
因此,如果我有另一個名為AdventureWorks2008R2.Production.ProductRev
表,並且在該表中, ProductNumber
列僅包含這些產品編號中的31個。 我可以更新AdventureWorks2008R2.Production.Product
刪除匹配的那些產品編號嗎?
因此, ProductRev
表中的AK-5381將用於刪除AdventureWorks2008R2.Production.Product
表中的AK-5381 ProductNumber
。
結果將是:
嘗試這個...
delete from p
from [AdventureWorks2008R2].[Production].[Product] as p
inner join [AdventureWorks2008R2].[Production].[ProductRev] as pr on
pr.ProductNumber=p.ProductNumber
我相信這就是您要尋找的...它基於在每個表中的ProductNumber
的基礎上成功與ProductRev
表進行JOIN
,刪除了Product
表中的行。
DELETE P
FROM AdventureWorks2008R2.Production.Product P
JOIN AdventureWorks2008R2.Production.ProductRev PR
ON P.ProductNumber = PR.ProductNumber
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.