Váš dotaz se zdá naprosto platný:
SELECT fk_id_tbl2 AS some_name
FROM table1
EXCEPT -- you may want to use EXCEPT ALL
SELECT pk_id
FROM table2;
názvy sloupců jsou pro dotaz irelevantní. Pouze typy dat se musí shodovat. Název výstupního sloupce vašeho dotazu je fk_id_tbl2
, jen proto, že je to název sloupce v prvním SELECT
. Můžete použít jakýkoli alias.
Co je často přehlíženo:jemné rozdíly mezi EXCEPT
(což složí duplikáty) a EXCEPT ALL
– který zachovává všechny jednotlivé neshodné řádky. Další vysvětlení a další způsoby, jak udělat totéž, některé z nich jsou mnohem flexibilnější:
- Vyberte řádky, které se nenacházejí v jiné tabulce
Podrobnosti pro EXCEPT
v návodu.