Here is how I would answer the original question:
select s.* from Students s
where not exists
(select 1 from StudentExam se
where se.ExamName = 'SQL Server'
and s.StID=se.StID)
While I have seen some performance issues when using an in (select ...) clause exists seems to work great.
[font="Tahoma"]Bryant E. Byrd, BSSE MCDBA MCAD[/font]
Business Intelligence Administrator
MSBI Administration Blog