Pasemos un poco en limpio el script de la consulta:
Código MySQL:
Ver original SUM (sol.monto
) AS monto
, INNER JOIN sadmint_servicios s
ON sol.articulo
= s.cod_serv
LEFT JOIN sadmint_clientes c
ON sol.cliente
= c.cod_resp
AND s.dep
= 'BANCO DE SANGRE' AND C.TIPO
NOT IN ('SEGUROS', 'EMPRESAS', 'PDVSA', 'FUNDACION')
Cambie el orden de la segunda tabla para que no se generen confusiones, en esa posicion queda un poco mas claro que la condicion con "sadmint_servicios" es mandatoria, mientras que con "sadmint_clientes" es opcional.
Ahora bien, el primer problema que yo le veo es que tienes esta condición:
Así escrita, esa condición es mandatoria, es decir, tiene que existir algun valor de esa lista en la tercera tabla (la de clientes), sin lo cual no devolverá datos. Pero como puede no existir ninguno, no devolverá nada.
¿Se entiende.
Por lo pronto yo cambiaría la sitaxis a esto: