Как оптимизировать вложенные запросы?
Внешне - нормальный запрос без перегибов. Проблема в чем? Долго выполняется? 
Без размера таблиц сложно что-то порекомендовать.
Вы джойните Filteredcontact ради 1 поля. Без него никак?
UPD: К тому же это же отчет, а не запрос для отрисовки интерфейса пользователю. Он ведь не по 40 минут строится?
А вы пробовали временные таблицы? Если выборки из подзапросов не большого размера, то можно просто через временные таблицы построить. На больших выборках, можно тоже временные таблицы, но они будут много скушивать с сервера памяти, и если её не хватит то производительность наоборот упадет. Но если у вас эти подзапросы постоянные, то может стоит сделать материализованные вьюхи, например? Или в принципе подумать над ненормализованной структурой бд.