sql >> Database >  >> RDS >> PostgreSQL

EXCEPT-clausule gebruiken in PostgreSQL

Uw vraag lijkt volkomen geldig:

SELECT fk_id_tbl2 AS some_name
FROM   table1
EXCEPT  -- you may want to use EXCEPT ALL
SELECT pk_id
FROM   table2;

Kolom namen zijn niet relevant voor de vraag. Alleen gegevenstypen moet overeenkomen. De naam van de uitvoerkolom van uw zoekopdracht is fk_id_tbl2 , gewoon omdat het de kolomnaam is in de eerste SELECT . Je kunt elke alias gebruiken.

Wat vaak over het hoofd wordt gezien:de subtiele verschillen tussen EXCEPT (die duplicaten vouwt) en EXCEPT ALL - die alle individuele ongeëvenaarde rijen behoudt. Meer uitleg en andere manieren om hetzelfde te doen, sommige veel flexibeler:

  • Selecteer rijen die niet aanwezig zijn in een andere tabel

Details voor EXCEPT in de handleiding.




  1. oracle 11g en integratie van winterslaapveer en jsf

  2. SQL:hoe vind je duplicaten op basis van twee velden?

  3. "Query niet toegestaan ​​in Waitfor" Fout 101 in SQL Server

  4. Oracle verwijderquery duurt te lang