クエリは完全に有効なようです:
SELECT fk_id_tbl2 AS some_name
FROM table1
EXCEPT -- you may want to use EXCEPT ALL
SELECT pk_id
FROM table2;
列名前 クエリとは無関係です。 データ型のみ 一致している必要があります。クエリの出力列名はfk_id_tbl2
です。 、最初のSELECT
の列名だからです 。任意のエイリアスを使用できます。
見落とされがちなこと:EXCEPT
の微妙な違い (重複を折りたたむ)およびEXCEPT ALL
-これにより、個々の一致しない行がすべて保持されます。同じことを行うための詳細な説明やその他の方法、それらのいくつかははるかに柔軟です:
- 他のテーブルに存在しない行を選択します
EXCEPT
の詳細 マニュアルで。