I Have a MySQL query that is being generated by a PHP script, the query will look something like this:
SELECT * FROM Recipe_Data WHERE 404_Without_200 = 0 A
I'm going to gamble here and suggest that executing the following query just once to create an index suitable for your query should reduce the query time by at least a second...
CREATE INDEX returnstatus ON Recipe_Data(404_Without_200,Failures_Without_Success)
See: http://dev.mysql.com/doc/refman/5.0/en/create-index.html for creating indexes, and http://dev.mysql.com/doc/refman/5.0/en/mysql-indexes.html for how indexes are used in queries.
Failing that, view all running processes on mysql to see if a currently running query from any source just refuses to die while consuming all the server's time and kill it. See: http://dev.mysql.com/doc/refman/5.0/en/kill.html
Failing that, determine what else each record may have in common to avoid having to reference each one individually by ID number in your IN statement. If necessary, add another table column to track that commonality. Then, add column(s) having that commonality to the above index and filter by that in your WHERE clause instead of using the IN statement. For example, if you want only those ID numbers to print out on page, have a visible column as type: tinyint with value 0 to exclude, and value 1 to include in your search results, then add visible column to your indexs and WHERE clause to speed up the query. You wouldn't need that IN statement at all.
Perhaps your in statement is dynamically built using a previous query. If that's the case, try pulling all rows with Recipe_Data WHERE 404_Without_200 = 0 AND Failures_Without_Success = 0. Then in your PHP script, simply discard a record in your fetch loop if the RHD_No doesn't match an expected value.