0

IN()MYSQL に関する質問があります。句が非パフォーマンスになっているかどうかを測定する方法を誰か教えてもらえますか。

これまでのところ、約 5.000 行を保持するテーブルがあり、IN()最大 100 の ID がチェックされます。今後 2 年間で 50,000 まで増加する可能性があります。

ありがとう

ノート

つまり、nonperformant効果的で、ゆっくりと、パフォーマンスが悪い...

更新 これは意思決定の問題です。そのため、EXPLAINMySql のコマンドは私の質問に答えません。パフォーマンスが悪いときは、自分で見ることができます。でも、ある意味でデザインを始める前に知りたいのですが、それは間違っているかもしれません...

更新 汎用の測定技術を探しています。

4

2 に答える 2

0

このEXPLAINステートメントを使用して、クエリがどのように実行されているかを確認します。オプティマイザーからのクエリ実行プラン、ステートメントの処理方法、テーブルの結合方法と順序に関する情報が表示されます。

の代わりにaJOINを使用できることがINよくあります。これにより、パフォーマンスが向上するはずです。さらに、インデックスはクエリの実行速度に大きな違いをもたらします。

私たちはあなたの質問とEXPLAIN少なくともを見る必要があるでしょう。

于 2012-09-12T14:16:38.560 に答える
0

mysql Explain ステートメントを使用して、クエリ プランを取得できます。select の前に Explain と入力するだけで、その内容を確認できます。読み方を学ぶ必要がありますが、クエリが期待どおりに高速であるかどうかを識別するのに非常に役立ちます。

mysql には、最適なクエリ オプティマイザーもありません。私の経験では、複雑な結合を実行するよりも、単純で高速なクエリを 100 回実行する方が速い場合があります。これはまれなケースですが、パフォーマンスが向上しました

于 2012-09-12T14:08:37.717 に答える