PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Sử dụng mệnh đề EXCEPT trong PostgreSQL

Truy vấn của bạn có vẻ hoàn toàn hợp lệ:

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

Cột tên không liên quan đến truy vấn. Chỉ loại dữ liệu phải phù hợp với. Tên cột đầu ra của truy vấn của bạn là fk_id_tbl2 , chỉ vì đó là tên cột trong SELECT đầu tiên . Bạn có thể sử dụng bất kỳ bí danh nào.

Điều thường bị bỏ qua:sự khác biệt nhỏ giữa EXCEPT (gấp các bản sao) và EXCEPT ALL - giữ cho tất cả các hàng riêng lẻ không khớp nhau. Giải thích thêm và các cách khác để thực hiện tương tự, một số trong số đó linh hoạt hơn nhiều:

  • Chọn các hàng không có trong bảng khác

Chi tiết cho EXCEPT trong sách hướng dẫn.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Loại bỏ các thẻ HTML trong PostgreSQL

  2. Gặp lỗi khi ánh xạ cột PostgreSQL LTREE ở chế độ ngủ đông

  3. Cách tạo các câu lệnh chuẩn bị cho postgres động trong PHP

  4. lastInsertId không hoạt động trong Postgresql

  5. Hàm trả về tập hợp cột động cho bảng đã cho