私は2つの異なるデータベースを持っています。両方とも、果物と呼ばれるテーブルがあります。今、私は第1のデータベースに関して第2のデータベースを更新したいと思う。このために、最初のデータベースのすべての列の値(ID列を除く)を2番目のデータベースの各行と比較し、差がある行を取得します。私が使っているクエリは2つの異なるデータベースの2つのテーブルの行を比較します
SELECT A.* FROM db1.Fruit A
Left Outer Join Fruit B ON
(A.Ratings = B.Ratings AND A.Name = B.Name AND A.Color = B.Color)
where B.Ratings IS NULL OR B.Name IS NULL OR B.Color IS NULL
Table in the first databaseTable in the second databaseです。
結果では、名前がKiwiで色が緑色のID 3の行が表示されます。しかし、それはまた、他の列がnullであるID 4のバナナを持つ行を示しています。そして、私のクエリでは、返す行がB.Ratings IS NULL or B.Color IS NULL
の場合に書き込みます。
したがって、IDの列を除くすべての列で表1の1行から1行を比較し、列の値に不一致がある行を戻す方法はありますか。
ようこそ。コードは、英語への翻訳の代わりにコードを読むときに最もよく理解されます。 [MCVE]を入力してください。 – user463035818