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

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

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

    superwei

    導航

    <2007年1月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統計

    常用鏈接

    留言簿(4)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    2007年1月31日 #

    希臘字母讀法

    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)編輯 收藏

    跳槽 程序員需要注意的十大要點

         摘要: 摘于它處,非我本文  閱讀全文

    posted @ 2007-01-31 21:09 小辭猬 閱讀(416) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 91免费人成网站在线观看18| 亚洲欧洲日韩在线电影| 欧美男同gv免费网站观看| 中文字幕在线成人免费看| 在线观看亚洲视频| 国内精品久久久久影院亚洲 | 亚洲αⅴ无码乱码在线观看性色| 久久精品7亚洲午夜a| 亚洲国产精品一区二区第四页 | 波多野结衣亚洲一级| 老汉色老汉首页a亚洲| 亚洲精品无码永久中文字幕| 四虎影视永久免费观看地址| 成人免费淫片在线费观看| 青娱分类视频精品免费2| 91香焦国产线观看看免费| 久久青青草原国产精品免费| 精品国产污污免费网站入口在线| 老子影院午夜伦不卡亚洲| 亚洲熟妇丰满xxxxx| 亚洲熟妇无码一区二区三区| 亚洲一区在线免费观看| 亚洲国产视频一区| 亚洲免费视频观看| 亚洲an日韩专区在线| 激情综合亚洲色婷婷五月| 狠狠色香婷婷久久亚洲精品| 亚洲人xxx日本人18| 亚洲乱码在线播放| 456亚洲人成在线播放网站| 亚洲一区无码中文字幕乱码| 亚洲中文字幕久在线| 亚洲AV成人影视在线观看 | 日韩高清免费观看| 拔擦拔擦8x华人免费久久| 国产真实伦在线视频免费观看| 国产精品免费看久久久久| 亚洲成a人片在线观看日本麻豆| 亚洲精品偷拍视频免费观看| 国产亚洲精品看片在线观看| 国产V亚洲V天堂无码久久久|