999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

關系數據庫查詢優化淺析

2018-11-13 12:03:04趙新華
新一代 2018年13期

趙新華

摘 要:SQL查詢已經廣泛應用于數據庫系統中,如何通過優化查詢進而提高數據庫的性能,本文從查詢語句的使用,視圖、存儲過程以及索引的應用幾方面進行了分析,并提出了優化方案。

關鍵詞:查詢優化;SQL;關系數據庫

隨著數據庫技術的廣泛應用,我們發現數據庫應用中大量的工作是要進行數據查詢和檢索處理。基于關系數據庫的標準查詢語言SQL在數據庫系統中被廣泛使用,而我們在使用SQL查詢數據時往往太注重結果而忽略了不同的查詢方法導致效率的降低。數據查詢效率和檢索處理速度已經成為衡量數據庫性能的一個重要指標。為了優化數據庫的性能,除了改進數據庫的硬件條件、軟件環境和規范化設計外,還應該進行數據查詢的優化。我認為可以從以下幾方面進行查詢優化。

一、索引優化

索引的概念:索引是對數據庫表中一個或多個字段的值進行排序的一種數據結構,使用索引可以快速訪問數據庫表中的特定數據。數據庫索引就好比一本書的目錄,能加快數據庫的查詢速度,索引又分為聚集索引和非聚集索引,聚集索引是按照數據存放的物理位置為順序,而非聚集索引則不是。聚集索引能提高多行檢索的速度,非聚集索引對單行檢索很快。

索引的使用原則:(1)索引要建立在使用率高的字段上,這樣可以提高索引的使用率。(2)建立復合索引時要注意復合索引的順序要按照使用的頻度來確定。(3)在經常需要排序和分組的字段上建立索引,以加快排序和分組的時間。(4)一般不在數據值較少的字段上建立索引。因為如果數據值少的話有沒有索引對查詢效率影響并不明顯。(5)對于經常存取修改的字段盡量不建立索引,因為這樣會帶來較大的維護工作。

合理建立索引能提高檢索速度,但并不是索引越多越好,過多的索引會降低數據庫系統的整體性能,因為索引是需要系統維護它,并且會產生索引碎片,所以我們建立索引時要綜合考慮既要達到快速檢索的目的,又不能降低系統整體性能。

二、SQL語句優化

(一)操作符的優化。(1)避免使用<>、NOT這樣的操作符,這種操作符使系統無法使用索引而只能直接搜索表中的數據。例如:select pid from tb_product where pprice<>4000,優化器將無法通過索引來確定將要命中的行數,因此需要搜索該表的所有行。而我們改為:select pid from tb_product where pprice>4000 or pprice<4000,就可以使用索引查詢,檢索速度得到了提高。(2)盡量減少LIKE操作符的使用,LIKE操作符應用通配符查詢可以實現幾乎是任意的查詢。但在字符串的比較中,有時大量字符的逐個比較,也會大大降低查找效率。

(二)select子句的優化。盡量減少select*的使用,用具體的列名代替*,過濾掉多余的列。使用top,distinct關鍵字減少多余重復的行,distinct在查詢一個字段或者很少字段的情況下使用,會避免重復數據的出現,給查詢帶來優化效果,但是查詢字段很多的情況下使用,則會大大降低查詢效率,所以當查詢字段多的時候要慎用。

(三)where子句的優化。合理設置WHERE條件的先后順序。把能過濾更多數據的條件放在前面,過濾少的放后面,便可提高檢索速度。

例如:select pname from tb_product where pquality=A and ptype =電腦產品

當產品質量大多為A時,我們就可以把語句改為:select pname from tb_product where ptype=電腦產品and pquality=A

這樣通過ptype=電腦產品這個條件過濾掉的數據行要比pquality=A過濾掉的數據行多,從而提高了查詢速度。

三、避免相關子查詢

子查詢的效率一般沒有連接查詢高,應該盡量用連接查詢來代替子查詢。除非必要,一般不要寫有子查詢的語句,如果必須用子查詢的時候,在子查詢里寫盡量多條件,使得子查詢返回的行數盡量少。

四、建立視圖

視圖可簡化用戶操作數據的方式,使用戶能著重于所感興趣的特定數據。如果該視圖數據規模小于基本表,則基于視圖的查詢比原查詢的速度會快得多。

五、使用存儲過程

把常用的查詢語句編寫成存儲過程,以此來取代應用程序中的查詢語句,可以很大程度的增加SQL語句執行效率。存儲過程是一個可重用的代碼模塊,存儲過程創建后,可以在程序中任意調用,減少了重新編譯的時間。

編寫性能優化的SQL語句是提高數據庫系統的重要因素,隨著數據庫管理系統中數據量的增大,如何提高查詢速度與效率也是計算機軟件開發的一個時代要求。實現優化查詢的方法很多,在使用中,要根據具體情況權衡利弊,使數據庫查詢性能最優。

參考文獻:

[1]黃崇本,韋存存.SQL SERVER數據庫技術與應用 大連理工大學出版社,2014

[2]祁鵬年,數據庫查詢優化淺析,計算機光盤軟件與應用,2014

[3]張燕琴,基于SQL Server數據庫的查詢優化,軟件導刊,2012

[4]商惠華,關系數據庫SQL查詢語句的優化,2014.

主站蜘蛛池模板: 欧美yw精品日本国产精品| 精品亚洲欧美中文字幕在线看| 久久精品中文无码资源站| 国产特一级毛片| 亚洲欧美日韩中文字幕在线| 国产在线观看99| 欧美日韩动态图| 国产精品极品美女自在线| 欧美三级视频网站| 国产在线98福利播放视频免费| 自拍中文字幕| 成人夜夜嗨| 国产午夜一级毛片| 欧美成人午夜在线全部免费| 国产第一页亚洲| 暴力调教一区二区三区| 亚洲无码37.| 91 九色视频丝袜| 国产杨幂丝袜av在线播放| AV色爱天堂网| 免费激情网址| 亚洲美女久久| 欧美精品导航| 久久黄色小视频| 亚洲欧美自拍中文| 久久一本日韩精品中文字幕屁孩| 日韩av在线直播| 狠狠综合久久久久综| 亚洲国产欧美目韩成人综合| 国产精品欧美日本韩免费一区二区三区不卡| 亚洲视频二| 久久精品亚洲热综合一区二区| 国产女人18水真多毛片18精品 | 久久9966精品国产免费| 成人夜夜嗨| 国产亚洲精品97在线观看| 欧美在线网| 国产噜噜在线视频观看| 国内精品一区二区在线观看| 免费人成视网站在线不卡| 9丨情侣偷在线精品国产| 免费又黄又爽又猛大片午夜| 亚洲一区二区约美女探花| 亚洲欧美成人影院| 久久婷婷六月| 日韩在线中文| 综合五月天网| 97成人在线视频| 婷婷六月综合| 中文字幕中文字字幕码一二区| 91在线播放国产| 1级黄色毛片| 99尹人香蕉国产免费天天拍| 呦女亚洲一区精品| 国产精品人莉莉成在线播放| 亚洲va在线观看| 伊人AV天堂| 成人第一页| 自慰网址在线观看| 97国产在线观看| 日a本亚洲中文在线观看| 亚洲国产精品一区二区高清无码久久| 91精品啪在线观看国产60岁| 国产在线97| 久久伊人色| 国产凹凸一区在线观看视频| 在线免费亚洲无码视频| 国产呦精品一区二区三区下载 | 91精品专区国产盗摄| 国产拍在线| 国产在线一区二区视频| 亚洲欧美日韩精品专区| 日韩精品高清自在线| 日韩高清一区 | 欧美亚洲激情| 国产尤物在线播放| 日韩黄色大片免费看| 国产肉感大码AV无码| 久久亚洲黄色视频| 国产第八页| 2021亚洲精品不卡a| 国产麻豆精品久久一二三|