1

私の手順では、同じデータを持つ2つのテーブルがあります。最初のテーブルをカーソルで確認します。これは、ほとんど同じデータを見つけた2番目のテーブルと比較されます。たとえば、table_1に10個のデータがあり、12個のデータtable2がある場合、カーソルが移動する2つのtable_1の欠落データを検出するにはどうすればよいですか?

どうも。

4

1 に答える 1

3

MINUS演算子を使用したほうがよいように聞こえます。

SELECT a, b, c
FROM table1
MINUS
SELECT a, b, c
FROM table2

これにより、table2には存在しないtable1に存在するすべての結果が表示されます。両方の方法で不一致を示すために、次のようなことを行うことができます。

SELECT z.*, 'In table1, not in table2' problem_description
FROM (
  SELECT a, b, c
  FROM table1
  MINUS
  SELECT a, b, c
  FROM table2   
) z
UNION ALL
SELECT z.*, 'In table2, not in table1' problem_description
FROM (
  SELECT a, b, c
  FROM table2
  MINUS
  SELECT a, b, c
  FROM table1   
) z

この答えのためのSQLフィドル

于 2012-07-10T22:16:40.337 に答える