2

我想比较两个具有相同列的表:

  • product-Id, Name, Description
  • Temp_Product-Id, Name, Description

现在用户完成的更新将保存到Temp_Product. 当管理员将看到该产品的详细信息时,我需要显示用户所做的更改。我想将这两个表与查询进行比较,并返回从 更改为Product的列Temp_Product

请建议我更好的方法来做到这一点?

4

2 回答 2

2
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)
于 2012-11-17T08:47:09.437 回答
1

我想将两个表与查询进行比较,并返回已从 Product 更改为 Temp_Product 的列

由于这两个表具有相同的结构,因此您可以EXCEPT 为此使用 set 操作符:

SELECT * FROM Temp_Product
EXCEPT
SELECT * FROM Product;

SQL 小提琴演示

于 2012-11-17T08:50:39.220 回答