溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MYSQL order by排序?qū)е滦实托?yōu)化

發(fā)布時(shí)間:2020-08-17 20:28:45 來源:ITPUB博客 閱讀:310 作者:darren__chan 欄目:MySQL數(shù)據(jù)庫

MYSQL order by排序?qū)е滦实托?yōu)化

有一個(gè)主表left join 同一個(gè)小表兩次分頁語句,因?yàn)閛rder by 導(dǎo)致執(zhí)行時(shí)做排序,從執(zhí)行計(jì)劃中Using filesort ,以及profile中creating sort index 耗時(shí)可以看出。

MYSQL order by排序?qū)е滦实托?yōu)化

MYSQL order by排序?qū)е滦实托?yōu)化


從trace文件可以看出filesort的計(jì)算:

"join_execution": {
        "select#": 1,
        "steps": [
          {
            "filesort_information": [
              {
                "direction": "desc",
                "table": "`topxxx` `t`",
                "field": "create_date"
              }
            ] /* filesort_information */,
            "filesort_priority_queue_optimization": {
              "limit": 20,
              "rows_estimate": 2302749,
              "row_size": 264,
              "memory_available": 4194304,
              "chosen": true
            } /* filesort_priority_queue_optimization */,
            "filesort_execution": [
            ] /* filesort_execution */,
            "filesort_summary": {
              "rows": 21,
              "examined_rows": 216594,
              "number_of_tmp_files": 0,
              "sort_buffer_size": 5712,
              "sort_mode": "<sort_key, rowid>"
            } /* filesort_summary */
          }
        ] /* steps */
      } /* join_execution */
    }



后面通過索引加入排序字段后減去排序操作,排序字段放在索引的最前面。

create index idx_topxxx1 on topic (create_date desc,is_del,is_en);


MYSQL order by排序?qū)е滦实托?yōu)化

trace 中可以看出排序使用了索引。

            "reconsidering_access_paths_for_index_ordering": {
              "clause": "ORDER BY",
              "index_order_summary": {
                "table": "`topic` `t`",
                "index_provides_order": true,
                "order_direction": "desc",
                "index": "idx_topxxx1",
                "plan_changed": true,
                "access_type": "index"
              } /* index_order_summary */
            } /* reconsidering_access_paths_for_index_ordering */
          },
          {


以此記錄。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI