Helaas kan mysql (en misschien alle dbms) uitdrukkingen zoals jobs.status != 331 and ack = 0
niet optimaliseren omdat B-Tree geen structuur is waarmee je snel iets kunt vinden dat niet gelijk is aan een constante waarde. Zo krijgt u altijd een volledige scan.
Als er een betere conditie was, zoals jobs.status = 331 and ack = 0
(let op het feit dat ik !=
naar =
) dan is het een advies om deze zoekopdracht te versnellen:
- splits de zoekopdracht in 2, samen met
UNION ALL
- vervang in één zoekopdracht
LEFT JOIN
naarINNER JOIN
(in degene die impliceert datwq.info is not NULL
)