-1

次のクエリのパフォーマンスを向上させるにはどうすればよいですか?どのようなインデックスを使用する必要がありますか?MySQLを使用しています

SELECT b.title
FROM book b, person p, order o
WHERE b.bid = o.bid
AND o.pid = p.pid
AND b.title LIKE 'LOVE%';
4

1 に答える 1

0

MySQL がインデックスを使用する方法を確認する必要があります。

あなたのクエリの場合:

  • b.bido.bido.pidおよびのインデックスは、p.pidテーブルの結合に使用されるため、特にお勧めします。外部キーの使用を検討することもできます。
  • b.titlewhere句でこれを使用しているため、 のインデックスも検討します。

ただし、変更がクエリにどのように影響するかを知りたい場合は、変更ごとにプロファイリングして、パフォーマンスにどのように影響したかを確認する必要があります。

ただし、クエリについて詳しく説明してください。テーブルorderおよび と結合していますpersonが、これらのテーブルから選択することも、where 句でこれらを使用することもありません。注文された本を選択するためにこれを行っているだけですか?その場合、なぜ参加するのpersonですか?

于 2012-08-19T21:05:04.180 に答える