Как избежать тормозов при срабатывании try catch?
Зачем вам не только исключения, но и вообще логика на приложении? Это поведение элементарно указывается в запросе.SELECT TOP 100 Calls.ID, Calls.DateTime, Calls.Trunk, 
coalesce(Subscribers.FIO, Calls.Subscriber) as fieldname, -- если FIO NULL, тогда использовать значение поля Subscriber
...
Не надо использовать исключения для обработки потока выполнения программы. Исключения - это дорого. Сделайте нормальную проверку вместо этого.