📅  最后修改于: 2022-03-11 15:05:20.609000             🧑  作者: Mango
// use NOT EXISTD (A MINUS B) instead of =
SELECT DISTINCT H1.HE_ID, H2.HE_ID
FROM INV_HEAD H1, INV_HEAD H2
WHERE H1.ID <> H2.ID
AND NOT EXISTS(
((SELECT ART_ID, QUANTITY, PRICE FROM INV_POS WHERE HE_ID = H1.ID)
MINUS
(SELECT ART_ID, QUANTITY, PRICE FROM INV_POS WHERE HE_ID = H2.ID))
UNION
((SELECT ART_ID, QUANTITY, PRICE FROM INV_POS WHERE HE_ID = H2.ID)
MINUS
(SELECT ART_ID, QUANTITY, PRICE FROM INV_POS WHERE HE_ID = H1.ID)));