Я думаю, это то, что вы хотите, я не взял все столбцы, как вы упомянули в своем примере.
Согласно вашим данным, это должно работать:
Declare @t table (EMPID int ,Department varchar(50),obtaineddate varchar(50),ExpiryDate varchar(50),Qualification varchar(50),DaystoExpire INT)
insert into @t values (1,'HR','2019-06-12','2024-06-12','BDE',1819),
(1,'HR','2017-06-09','2021-09-18','FGA',821),
(1,'HR','2019-06-18','2021-09-18','RVT',821),
(1,'HR','2019-01-28','2020-01-28','HIJ',222),
(1,'HR','2019-06-03','2019-07-03','TTT',13),
(2,'Payroll','2018-10-18','2019-10-18','RVT',120)
select * from @t a
where not exists ( select * from @t where a.EMPID=EMPID and a.Qualification='RVT')
UNION
select * from @t a
where exists ( select * from @t where a.EMPID=EMPID and Qualification='RVT')
and not exists (select * from @t where a.EMPID=EMPID and Qualification='BDE')
order by EMPID,Qualification