PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Използване на клауза EXCEPT в PostgreSQL

Запитването ви изглежда напълно валидно:

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 в ръководството.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да вмъкна няколко стойности в таблица на postgres наведнъж?

  2. Файл на сокет /var/pgsql_socket/.s.PGSQL.5432 липсва в Mountain Lion (OS X сървър)

  3. Разделете колоната на няколко реда в Postgres

  4. IntegrityError дублиращата се стойност на ключа нарушава уникалното ограничение - django/postgres

  5. Общ преглед на PostgreSQL кеширане на заявки и балансиране на натоварването