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

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

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

     一般的信息系統都會存在查詢數據庫的要求。查詢速度的快慢直接影響系統壓力測試的結果。通常情況下,為了提高查詢速度,系統修改的順序為:SQL語句優化-〉數據庫優化-〉操作系統優化,實際上還有一個方面:系統架構優化。但系統架構優化一般代價比較大,起碼要項目經理拍板才能執行,所以在這里就不多說了。
    
      對于一般的開發人員接觸到最多的當屬SQL語句優化。而SQL語句優化中除了對SQL語句本身的優化以外,創建合適的索引是較常用的方法。索引通常分為聚集索引和非聚集索引。
    
      聚集索引表示表中存儲的數據按照該索引的順序存儲,檢索效率比普通索引高,但對數據新增/修改/刪除的影響比較大,一個表只能存在一個聚集索引。如果沒有特地的修改,主鍵都是聚集索引。
    
      相對應的非聚集索引不影響表中的數據存儲順序,檢索效率比聚集索引低,但對數據新增/修改/刪除的影響很少。
    
      創建索引的原則總結如下:
    
      首先要判斷表的存儲數據量大小、高性能的操作要求(是頻繁增刪改操作還是頻繁的查詢操作)。對于要求頻繁增刪改操作的表,建立索引可能只會起到反作用。
    
    1. 對于只有幾十、幾百條記錄的表,建立索引的效果可能還不如逐行掃描來得快
    2. 對于只有幾個可能值的字段,最常見的如性別等字段,建立索引是無意義的
    3. 對于在查詢語句的WHERE子句中頻繁出現的字段可以建立索引,但注意如果索引字段上存在函數,該索引失效。如:WHERE SUBSTR(NAME,1)=’N’;NAME字段上的索引不會起作用,改寫成WHERE NAME LIKE ‘N%’, NAME字段上的索引才能生效。另外IS NULL和IS NOT NULL也會使索引失效
    4. 適量的冗余字段可以減小查詢的開銷,雖然這樣做不符合數據庫范式的要求
    5. 建立在大數據類型字段上的索引沒有意義,比如SQLSERVER的IMAGE,ORACLE的LOB
      目前市面上的查詢優化器很多,如SQL EXPERT等,最直接的方法莫過于用這些工具試驗怎樣的索引最有效率
    posted on 2008-09-20 15:58 李威威 閱讀(129) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
     
    主站蜘蛛池模板: 极品色天使在线婷婷天堂亚洲| 在线成人a毛片免费播放 | 香蕉免费一区二区三区| 免费无码婬片aaa直播表情| 亚洲a级片在线观看| 亚洲色图视频在线观看| 亚洲午夜无码久久久久| 亚洲福利精品电影在线观看| 女人被弄到高潮的免费视频| 中国xxxxx高清免费看视频| 久久免费高清视频| 久青草视频在线观看免费| 美女被爆羞羞网站在免费观看| 亚洲中文无码亚洲人成影院| 亚洲三级视频在线| 亚洲中文字幕人成乱码| 亚洲精品无码久久久久久久| 久久亚洲国产欧洲精品一| 中文字幕精品亚洲无线码一区| 亚洲av中文无码| 亚洲VA综合VA国产产VA中| 亚洲 无码 在线 专区| 国产免费av片在线无码免费看| 日韩在线天堂免费观看| 精品国产免费一区二区| 国内自产少妇自拍区免费| 成年午夜视频免费观看视频 | 日本久久久久亚洲中字幕| 亚洲av无码不卡| 久久噜噜噜久久亚洲va久| 亚洲国产高清在线| 久久亚洲精品无码AV红樱桃| 亚洲邪恶天堂影院在线观看| 亚洲黄色中文字幕| 亚洲最大黄色网址| 亚洲一本到无码av中文字幕| 亚洲码欧美码一区二区三区| 美女免费精品高清毛片在线视| 精品国产日韩亚洲一区在线| 一区二区三区免费视频网站| 91国内免费在线视频|