MySQL не поддерживает except
, поэтому просто используйте not exists
или not in
:
select courseid
from section sf
where semester = 'Fall' and year = 2009 and not exists
(select 1
from section ss
where sf.courseid = ss.courseid and ss.semester = 'Spring' and ss.year = 2010
);
(я предпочитаю not exists
, потому что он имеет более интуитивную поддержку значений NULL
.)
Это не точно, потому что except
удаляет дубликаты. Вы могли бы использовать select distinct
, но я сомневаюсь, что это действительно необходимо.