I'm trying to run a very simple query on two joined tables but it's taking a long time to
I have two tables, users and sites, both of which have an email address field that I'm
here's my query:
INNER JOIN users ON sites.userid = users.ID
WHERE sites.email = 'person@stripped'
OR users.email = 'person@stripped'
both tables contain over 100k rows. users.ID is a primary key, and sites.userid,
sites.email and users.email all have indices.
The query above is taking over 3.3 seconds to run, but if i only use one of the where
clauses, ie. I only search on users.email or I only search on sites.email, the query
takes around 0.002 seconds to run.
As soon as I try and run the query with BOTH where clauses it takes exponentially longer!
Can anyone suggest what might be the problem or how I could rewrite the query to
significantly speed it up?