Один из способов сделать это состоит в том, чтобы создать каждый запрос на подсчет отдельно, а затем выполнить левое объединение из таблицы маршрутов для каждого, чтобы ваши результаты не фильтровались, если в обеих таблицах подсчета нет совпадений.
SELECT q1.routecode,
t1,
t2
FROM routes
LEFT JOIN (SELECT routecode,
COUNT(routecode) AS t1
FROM customervisits
WHERE ( routecode IN ( '701', '702', '704', '703', '705' ) )
AND routestartdate = '12/15/2011'
AND schelduledflag = '1'
GROUP BY routecode) AS q1
ON routes.routecode = q1.routecode
LEFT JOIN (SELECT routecode,
COUNT(routecode) AS t2
FROM customervisits
WHERE ( routecode IN ( '701', '702', '704', '703', '705' ) )
AND routestartdate = '12/15/2011'
AND schelduledflag = '0'
GROUP BY routecode) AS q2
ON routes.routecode = q2.routecode
WHERE a.depotcode = '6' and (t1 is not null or t2 is not null);