<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    superwei

    導航

    <2018年10月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統計

    常用鏈接

    留言簿(4)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    2018年10月25日 #

    希臘字母讀法

    posted @ 2021-06-19 11:43 小辭猬 閱讀(84) | 評論 (0)編輯 收藏

    【Mysql】關于索引

    DB引擎:InnoDB
    兩表A,B表均為6W+的記錄。用B表的信息更新A表。
    SQL:update A left join B on A.field1 = B.field1 and A.field2 = B.field2
             set A.field3 = B.field3, A.field4 = B.field4
    無引擎時:每1000更新需要2分11秒,全部更新大概需要2~3小時。

    此時加入索引:
    CREATE INDEX field1_Index ON `A`(`field1`);
    注:1、此處只加field1是因為 field2的內容變化很小,就那幾個值。
          2、此SQL里的字段都不是主鍵

    再次執行SQL,效率依舊。似乎索引沒有作用。為了驗證我的想法,查看了執行方式:
    explain update A left join B on A.field1 = B.field1 and A.field2 = B.field2
             set A.field3 = B.field3, A.field4 = B.field4 
    果然在執行時,沒用到索引。找到癥結,那就繼續找為什么索引沒有被用的原因。
    查找過程省略,直接上結果。
    因為是update,所以我認為 左聯和直聯,對于結果沒有區別,但是從左聯改為直聯后,
    再查詢執行方式,發現就能使用索引(原因暫不知道,以后知道了再寫)
    于是再次執行如下SQL:
    update A inner join B on A.field1 = B.field1 and A.field2 = B.field2
             set A.field3 = B.field3, A.field4 = B.field4 
    6W+的數據執行時間:1.43秒
    優化完畢。
    另,因為以上字段都非主鍵,所以 SQL修改成以下方式執行似乎更快,查詢執行方式,用到了主鍵索引和我自己加的索引
    update A left join B on A.field1 = B.field1 and A.field2 = B.field2
             set A.field3 = B.field3, A.field4 = B.field4
    where A.key in (select key from A)

    附:
    刪除索引:drop INDEX field1_Index ON `A`;
    查看索引:show index from A
    查看線程:select * from information_schema.processlist t
                  show processlist
    殺線程: kill processId


    posted @ 2018-10-25 09:49 小辭猬 閱讀(172) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 亚洲中久无码永久在线观看同| 亚洲毛片免费观看| 国产免费av片在线看| 亚洲色大成网站WWW久久九九| 亚洲久本草在线中文字幕| 一级毛片在线完整免费观看| 在线日韩av永久免费观看| 亚洲暴爽av人人爽日日碰| 热久久精品免费视频| 立即播放免费毛片一级| 亚洲人成无码网站久久99热国产| 婷婷亚洲综合五月天小说| 在线涩涩免费观看国产精品| 亚洲国产精品国自产拍AV| 一区二区免费视频| 国产成人精品亚洲2020| 日本一道本高清免费| 国产精品视频全国免费观看| 精品国产综合成人亚洲区| 99久久久国产精品免费蜜臀| 亚洲色欲色欲www| 免费大黄网站在线观| 野花香高清视频在线观看免费| 免费视频中文字幕| 亚洲av无码片vr一区二区三区| 6080午夜一级毛片免费看| 亚洲一区精品视频在线| 国产国产成年年人免费看片| 国产亚洲日韩在线a不卡| 亚洲中文字幕在线乱码| 国产h视频在线观看网站免费| 国产成人亚洲综合无码精品| 中文字幕天天躁日日躁狠狠躁免费| 亚洲第一成人影院| 日本免费在线观看| 亚洲av一本岛在线播放| 亚洲成人一区二区| 国产免费的野战视频| 一级毛片免费全部播放| 久久久久久亚洲精品成人| 国产一级淫片a免费播放口之|