クエリは正しいようです。あなたの問題は、ロジックの問題ではなく、パフォーマンスの問題のようです。 emailaddress
の両方を確認する必要があります およびid
フィールドはデータベース内で適切にインデックス付けされています。そうでない場合、100万行近くになると、クエリがハングすることが予想されます。
(id
だと思います おそらくすでにインデックスが作成されていますが、emailaddress
ではありません 。特にテーブル間の結合を行う場合、これらのフィールドのいずれかがインデックスに登録されていない場合は、多くの全表スキャンが表示されます。)
編集:
これが当てはまるというコメントを見て、 http://dev.mysql.com/doc/refman/5.0/en/create-index.html インデックスを作成するため。つまり、次のようなものです:
CREATE INDEX email_index ON emaildata(emailaddress) USING BTREE;