La tua richiesta sembra perfettamente valida:
SELECT fk_id_tbl2 AS some_name
FROM table1
EXCEPT -- you may want to use EXCEPT ALL
SELECT pk_id
FROM table2;
Colonna nomi sono irrilevanti per la query. Solo tipi di dati deve combaciare. Il nome della colonna di output della tua query è fk_id_tbl2 , solo perché è il nome della colonna nel primo SELECT . Puoi usare qualsiasi alias.
Ciò che viene spesso trascurato:le sottili differenze tra EXCEPT (che piega i duplicati) e EXCEPT ALL - che mantiene tutte le singole righe non corrispondenti. Maggiori spiegazioni e altri modi per fare lo stesso, alcuni dei quali molto più flessibili:
- Seleziona le righe che non sono presenti in un'altra tabella
Dettagli per EXCEPT nel manuale.