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.