検索

ホームページ  >  に質問  >  本文

1 対多の関係を使用した MYSQL クエリのパフォーマンスの向上

データベースに結果を返すまでに 25 秒かかるクエリがありますが、これは長すぎます。かなりシンプルにする必要があるようです。 2 つのテーブル。メイン テーブル (ドキュメント) はいくつかのデータ列を持つ標準テーブルで、接続テーブルは 2 つの列 (parent_id、division_id) のみを持つマッピング テーブルです。以前はマッピングテーブルにインデックスがなかったので、インデックスを追加し、インデックスを含むように「解釈」を変更しましたが、パフォーマンスには影響がないようです。

クエリは次のとおりです:

リーリー

説明の結果は次のようになります。

ドキュメントの総行数: 6720 マッパーの総行数: 6173

収集した情報に基づいて、クエリを高速化するために「type」または「extra」を改善する必要があります。ここで何ができるでしょうか?

テーブル作成ステートメント:

ああああ

P粉993712159P粉993712159318日前557

全員に返信(1)返信します

  • P粉226667290

    P粉2266672902024-03-29 13:06:40

    次のインデックスを作成することで、テストでより好ましい EXPLAIN レポートを取得できました。 リーリー

    idx_parent も主キーのプレフィックスであり冗長であるため削除しました。

    idタイプを選択してください使用可能なキーkey_lenフィルタ済み1idx_clientidx_client1101100.00一時的なものを使用する1メイン、部門ID部門ID381100.00場所を使用;インデックスを使用;一意の

    返事
    0
  • キャンセル返事
  • ###表面### ###パーティション### ###タイプ### ###鍵### ###参照する### ###わかりました### ###追加### ###単純### ###書類### ###ヌル### ###参照する### ###絶え間ない###
    ###単純### ###部門### ###ヌル### ###参照する### ###絶え間ない###