• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQLのテーブル連結でクエリに4分以上かかる)

MySQLのテーブル連結でクエリに4分以上かかる

このQ&Aのポイント
  • MySQLのテーブル連結を行うクエリが4分以上かかる現象が発生しています。テーブル内のレコード数に対してクエリの実行時間が非常に長いため、処理時間を短縮したいと考えています。
  • クエリの実行にはPHPやCLIのmysqlを使用しており、いずれの環境でも同様の結果となります。テーブル内のレコード数はarticlesが738,338件、titlesが34,821件です。
  • ハードウェアの性能限界やテーブルの連結方法による影響など、クエリの処理時間を短縮するためのヒントを求めています。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

EXPLAINで構文チェックしてみてください。 おそらくインデックスが働いていないのでしょう。 (1)articlesテーブルとtitlesテーブルのculumn1、 title、datetimeにそれぞれインデックスを設定する。 (プライマリならそれでもよい) (2)datetimeにlikeではインデックスはきいてません。 `datetime` BETWEEN '2007-11-18' AND '2007-11-19' としてください。

satsukima
質問者

お礼

早速のご回答ありがとうございます。 articlesテーブルとtitlesテーブルのculumn1に部分インデックスを追加して同じクエリを実行したところ、1秒強で結果が返ってくるようになりました!^^ 他のアドバイスについても今後、必要に応じて使っていきたいと思います。 的確なアドバイスを、本当にありがとうございました。非常に助かりました。