delete from #abcd where bbc in(
select a.bbc from #abcd as a join
(select abc,count(abc) as tt from #abcd group by abc having count(abc)>1) as b
on a.abc = b.abc and a.bbc <>
(
select top 1 a.bbc from #abcd as a join
(select abc,count(abc) as tt from #abcd group by abc having count(abc)>1) as b
on a.abc = b.abc
)
)