答案 0 :(得分:1)
这是您想要的吗?
select id
from t
group by id
having year(max(enddate)) = 2019;
答案 1 :(得分:0)
您可以使用EXCEPT
:
SELECT id FROM t WHERE YEAR(ENDDATE) = 2019
EXCEPT
SELECT id FROM t WHERE YEAR(ENDDATE) = 2020
答案 2 :(得分:0)
使用DATEDIFF函数可能会有些运气:
WHERE DATEDIFF(YEAR, EndDate, 2019) = 0
答案 3 :(得分:0)
您只需要更改结束日期的最大值即可与每个组ID的2020年日期不匹配,如下所示。
select id
from table
group by id where
HAVING max(enddate) NOT LIKE
'%2020%';
答案 4 :(得分:0)
只是用另一种方式给猫皮剥皮。 WHERE...NOT EXISTS
应该适合您。
select
id
from table as t
where
not exists
(
select 1
from table as t1
where
t1.id = t.id
and
YEAR(t1.ENDDATE) = 2020
);