Resultado común de dos consultas

Estoy trabajando en dos consultas SQL. Consulta 1 extrae datos donde el empleado pasó más de 8 horas al día en la oficina, por lo que se ve así:

select a.empname, a.empid from emp a join shift b on a.dept=b.dept where empid is not null and a.month= '1' group by a.empname, a.empid having count (shifthours)>8 intersect select a.empname, a.empid from emp a join shift b on `a.dept` = `b.dept` where empid is not null and a.month='2' group by `a.empname, a.empid` having count (`shifthours`)>9 

Cuando ejecuto esta consulta, no obtiene el resultado correcto. Si ejecuto ambas consultas por separado y uso VLOOKUP en Excel, me da el resultado correcto.