MySQL によって作成される最適化はインデックスを追加することですが、インデックスを追加しても目的の効果が得られない状況が発生することがあります。 追加した後も、すべてのデータに対して検索が失敗します。理由はSQLです。 説明選択 cs.sid、 -- c.courseFrontTitle、 -- c.imgBig、 cs.studyStatus、 手数料、 -- act.PROC_INST_ID_ AS プロセスID、 cs.createDTM、 cs.payStatus、 cs.isCompleted、 cs.saleChannel、 cs.isDelete から ビジネスコーススタディcs Biz_CourseOrderItem coi を cs.sid = coi.CourseStudyID に左結合します どこ cs.studentID = 00001 かつ cs.payStatus が in(0) ではない インデックスを見ると、sid が bigint で CourseStudyID の型が varchar であることが原因です。理由はここにあります。型を bigint に変更すると、クエリ速度が一気に向上します。 私もこのような状況に遭遇しました。エクストラを分析した結果、0.6s 単位で順序付けしなくても速度は問題ないことがわかったので、6s 単位で順序付けを追加しました。 解決策は、order by のインデックスを作成することです。ここでの order by は 2 つのフィールドです。 ab、index_a_bの結合インデックスを作成します。
この時点でパフォーマンスを見ると、filesortの使用は消えている 速度は0.6秒になります 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: vue3 を使用してカウント関数コンポーネントのカプセル化例を実装する
>>: Nginx で HTTPS 証明書を構成する詳細なプロセス
序文リバース プロキシは、Web 経由で行われたリクエスト (http と https の両方) を...
目次JavaScript イベント:よく使用されるイベント:イベントアクション要約するJavaScr...
この記事では、Windows プラットフォームで ogg プログラムを監視する方法を紹介します。 (...
場所表現タイプ~ は大文字と小文字を区別して通常の一致を実行することを示します~*は大文字と小文字を...
目次序文MySQL の NULL 2 NULL占有長3 NULL値の比較4SQLはNULL値を処理す...
前回の記事では、Docker を使用して、コンパイルされた jar パッケージをイメージに組み込む ...
コンピュータ ルームのサーバー上の mysql がしばらく実行されていたのですが、突然、再起動しても...
序文一般的に、Linux システムについて話すときは、Linux カーネルと GNU プロジェクトに...
目次1. MySQLアーキテクチャの分析1.1 コネクタ1.2 クエリキャッシュ1.3 アナライザー...
概要: 仕事でも面接でも、Web フロントエンドのパフォーマンスを最適化することは非常に重要です。で...
目次1. ブラウザのローカルストレージ技術1.1、セッションストレージ1.2、ローカルストレージ2....
目次例示する1. ブロブオブジェクト2. フロントエンド3. バックエンド要約する例示する最近、ファ...
目次1. provide/inject の用途は何ですか? 2. provide/injectの使い...
js 配列はどこでも使用されているため、おそらく誰もがよく知っているでしょうが、配列クラス (疑似配...
テーブル ヘッダーが固定されている場合は、それを 2 つのテーブルに分割する必要があります。1 つの...