There is nothing wrong with your first version. Maybe adding a condition for the wrong @SortType (not being A,B,C):
else
begin
select TopicID
from Topics
where 0 = 1
order
by TopicID
end
The second version could be like:
select TopicID
from Topics
where 1 = case
when @SortType='A' and TopicDelete = 0 then 1
when @SortType='B' and TopicDelete = 1 then 1
when @SortType='C' then 1
else 0
end
order
by TopicID