SQL Server比较具有相同列的两个表行并返回更改的列
我想比较两个具有相同列的表:
-
product
–Id, Name, Description
-
Temp_Product
–Id, Name, Description
现在用户完成的更新将保存到Temp_Product
。 当管理员看到该产品的详细信息时,我需要显示用户完成的更改。 我想将两个表与查询进行比较,并返回已从Product
更改为Temp_Product
。
请建议我更好的方法吗?
Select p.id,p.name as orgn,t.name as altn,p.descripion as orgd,t.description as altd from product p join tmp_product t on t.id=p.id and (t.name<>p.name or t.description <> p.description)
我想将两个表与查询进行比较,并返回已从Product更改为Temp_Product的列
由于这两个表具有相同的结构,因此您可以使用EXCEPT
set oeprator:
SELECT * FROM Temp_Product EXCEPT SELECT * FROM Product;