- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQLのテーブル連結でクエリに4分以上かかる)
MySQLのテーブル連結でクエリに4分以上かかる
このQ&Aのポイント
- MySQLのテーブル連結を行うクエリが4分以上かかる現象が発生しています。テーブル内のレコード数に対してクエリの実行時間が非常に長いため、処理時間を短縮したいと考えています。
- クエリの実行にはPHPやCLIのmysqlを使用しており、いずれの環境でも同様の結果となります。テーブル内のレコード数はarticlesが738,338件、titlesが34,821件です。
- ハードウェアの性能限界やテーブルの連結方法による影響など、クエリの処理時間を短縮するためのヒントを求めています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
EXPLAINで構文チェックしてみてください。 おそらくインデックスが働いていないのでしょう。 (1)articlesテーブルとtitlesテーブルのculumn1、 title、datetimeにそれぞれインデックスを設定する。 (プライマリならそれでもよい) (2)datetimeにlikeではインデックスはきいてません。 `datetime` BETWEEN '2007-11-18' AND '2007-11-19' としてください。
お礼
早速のご回答ありがとうございます。 articlesテーブルとtitlesテーブルのculumn1に部分インデックスを追加して同じクエリを実行したところ、1秒強で結果が返ってくるようになりました!^^ 他のアドバイスについても今後、必要に応じて使っていきたいと思います。 的確なアドバイスを、本当にありがとうございました。非常に助かりました。