Truy vấn số 1 không phải là cách hay để thực hiện điều này ... (KHÔNG) TRONG CHỌN là tốt cho một số mục nhập, nhưng nó không thể sử dụng chỉ mục (Seq Scan
).
Trước khi có EXCEPT ... đây là cách nó được thực hiện bằng cách sử dụng JOIN (HASH JOIN
):
SELECT sp.id
FROM subsource_position AS sp
LEFT JOIN subsource AS s ON (s.postion_id = sp.id)
WHERE
s.postion_id IS NULL
EXCEPT đã xuất hiện trong Postgres từ lâu, rất lâu trước đây ... Nhưng đối với ví dụ, sử dụng MySQL, tôi tin rằng đây vẫn là cách duy nhất để đạt được điều này bằng cách sử dụng các cặp chỉ mục.