2

同じ列を持つ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 に変更された列を返したい

2 つのテーブルは同じ構造を持っているEXCEPT ため、これには set oeprator を使用できます。

SELECT * FROM Temp_Product
EXCEPT
SELECT * FROM Product;

SQL フィドルのデモ

于 2012-11-17T08:50:39.220 に答える