Desværre kan mysql (og måske enhver dbms) ikke optimere udtryk som jobs.status != 331 and ack = 0 fordi B-Tree ikke er en struktur, der gør det muligt hurtigt at finde noget, der-ikke-er-lig med-en-konstant-værdi. Således får du altid en fuld scanning.
Hvis der var en bedre tilstand som jobs.status = 331 and ack = 0 (bemærk det faktum, at jeg har ændret != til = ), så ville det være et råd at fremskynde denne forespørgsel:
- opdel forespørgslen i 2, forenet af
UNION ALL - erstat i én forespørgsel
LEFT JOINtilINNER JOIN(i den, der antyder, atwq.info is not NULL)