2 つのテーブルからビューを作成する必要があります。それらは 1 つの列でリンクされていますが、あるテーブルではこの列が主キーであり、別のテーブルではこの列が重複している可能性があります。結果のビューには、この列の重複があってはなりません。2 番目のテーブルの行が CASE 条件を満たす場合、同じキーの他の行に関係なく、ビューの結果は「Y」になります。
スクリプトと結合結果を見てください。 結果の最初の行は正しくありません。削除する必要があります
Create table A1Table(
a Integer not null
);
Create table A2Table(
a Integer,
b Integer
);
insert into A1Table values (1);
insert into A1Table values (2);
insert into A1Table values (3);
insert into A2Table values (1, 1);
insert into A2Table values (1, 100);
CREATE VIEW A12 AS select a1.a,
CASE
WHEN a2.b=100 AND a2.b is not NULL THEN 'Y'
ELSE 'N'
END AS report
FROM A1Table a1
Left JOIN A2Table a2 ON a2.a = a1.a;
-->
a | report
---+--------
**1 | N** -> *should be eliminated*
1 | Y
2 | N
3 | N