i think it has something to do with not going through the whole table with the way the query is. try this:
Code:
SELECT value1,value2,value3
FROM tbl1
WHERE tbl1.value4='a value'
AND tb1.value5 IN
(SELECT value1 FROM tbl2)
although i think this will work with mySQL 5, it may not work with mySQL 4. not sure. I haven't used mySQL all that much.