私は2つのテーブルを持っていますall_users:vip_users
all_usersテーブルにはシステム内のすべてのユーザーのリストがあり (あなたは言いませんか?)、現在、約 57,000 のレコードがあり、vip_usersテーブルには約 37,000 のレコードがあります。
両方のテーブルの主キーは自動インクリメントidフィールドです。all_usersテーブルは属性数の点で大きく(約20、そのうちの1つはemail)、vip_usersテーブルには(と一緒にid)email属性しかありません。
これを行うことで「非Vip」ユーザーを照会したかったのです( SOに関するこの質問の助けを借りて):
SELECT all_users.id, all_users.email
FROM all_users
LEFT OUTER JOIN vip_users
ON (all_users.email=vip_users.email)
WHERE vip_users.email IS NULL
そして今、ついに問題が発生しました-phpmyadminでこのクエリを実行しましたが、20分後でも完了に時間がかかりすぎたため、クエリを閉じてhttpdサービスを再起動する必要があり、サーバーの負荷が2を超え、サイト(ロードが遅すぎたため、役に立たなくなりました。だから、私の質問は - どうすればこのクエリを作成できますか? いくつかのスクリプトを作成して一晩実行しますか? phpmyadmin を使用しないでください (これが問題の原因でしょうか?)、または別の SQL クエリを使用する必要がありますか?
これについてのあなたの考えを助けてください。