0

私は現在、異なる結果を引き出している2つのビューを持っています。1つは古いデータベースにあり、もう1つは新しいデータベースにあります。
ondビューは〜50000レコードをプルしますが、新しいビューは〜40000をプルし
ます。どちらも、1つまたは2つの列を除いて、ほぼすべて同じデータを持っています。

2つを組み合わせて何が違うのかを確認する方法はありますか?

クエリと結合に関しては、知識が限られています。

左結合と右結合を試しましたが、100000以上の結果が得られています。私はそれを望んでいません。〜50000の結果が必要で、情報がない場合は列がnullになります。

これは可能ですか?ありがとう

4

2 に答える 2

4

あなたはこれを試すことができます:

    SELECT * FROM OldView
EXCEPT
    SELECT * FROM NewView
于 2012-08-02T01:22:03.850 に答える
2

次のことを試すことができます。最初に左結合でテーブルを結合し、後で新しい値からnull値をフィルタリングします。

このようなもの

select  *
from    oldview o
        left join newview n
          on  o.field = n.field
where   n.value is null

このようにして、それらを組み合わせ、newview値をwhereステートメントでフィルタリングします。重要なのは、最初にそれらを組み合わせ、その後それらをフィルタリングすることです。

于 2012-08-02T16:16:36.437 に答える