Infelizmente o mysql (e talvez qualquer dbms) não pode otimizar expressões como
jobs.status != 331 and ack = 0 porque B-Tree não é uma estrutura que permite encontrar rapidamente qualquer coisa que não seja igual a um valor constante. Assim, você sempre obterá uma varredura completa. Se houvesse alguma condição melhor como
jobs.status = 331 and ack = 0 (observe o fato de que eu mudei != para = ) então seria um conselho para acelerar essa consulta:- divida a consulta em 2, unidas por
UNION ALL - substituir em uma consulta
LEFT JOINparaINNER JOIN(no que implica quewq.info is not NULL)