Prøv at erstatte underforespørgslen med en joinforbindelse:
SELECT *
FROM files f
LEFT OUTER JOIN reades r on r.file_id = f.file_id
WHERE r.file_id IS NULL
Her er et link til en artikel om dette problem . Forfatteren af denne artikel skrev en lagret procedure for at tvinge MySQL til at evaluere underforespørgsler som uafhængige. Jeg tvivler dog på, at det er nødvendigt i dette tilfælde.