我需要进行这样的查询:
SELECT DISTINCT Carta_ID
FROM Carta_Alarme
INNER JOIN Alarme ON Carta_Alarme.Alarme_ID = Alarme.ID
WHERE (
YEAR( Alarme.dtOcorrencia ) = 2011
) NOT
IN (
SELECT DISTINCT Carta_ID
FROM Carta_Alarme
INNER JOIN Alarme ON Carta_Alarme.Alarme_ID = Alarme.ID
WHERE (
YEAR( Alarme.dtOcorrencia ) = 2012
)
)
第一个 Select 的结果是 (1, 5, 6)。“NOT IN”之后的另一个选择的结果是(1,2,3,4,5),但总查询的结果是(1,2,3,4,5),我只需要(6)。
所以我需要的是这个选择之间的一个 EXCEPT,而我得到的是一个 INTERSECT