亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        關(guān)系數(shù)據(jù)庫(kù)查詢(xún)優(yōu)化淺析

        2018-11-13 12:03:04趙新華
        新一代 2018年13期
        關(guān)鍵詞:關(guān)系數(shù)據(jù)庫(kù)

        趙新華

        摘 要:SQL查詢(xún)已經(jīng)廣泛應(yīng)用于數(shù)據(jù)庫(kù)系統(tǒng)中,如何通過(guò)優(yōu)化查詢(xún)進(jìn)而提高數(shù)據(jù)庫(kù)的性能,本文從查詢(xún)語(yǔ)句的使用,視圖、存儲(chǔ)過(guò)程以及索引的應(yīng)用幾方面進(jìn)行了分析,并提出了優(yōu)化方案。

        關(guān)鍵詞:查詢(xún)優(yōu)化;SQL;關(guān)系數(shù)據(jù)庫(kù)

        隨著數(shù)據(jù)庫(kù)技術(shù)的廣泛應(yīng)用,我們發(fā)現(xiàn)數(shù)據(jù)庫(kù)應(yīng)用中大量的工作是要進(jìn)行數(shù)據(jù)查詢(xún)和檢索處理?;陉P(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)查詢(xún)語(yǔ)言SQL在數(shù)據(jù)庫(kù)系統(tǒng)中被廣泛使用,而我們?cè)谑褂肧QL查詢(xún)數(shù)據(jù)時(shí)往往太注重結(jié)果而忽略了不同的查詢(xún)方法導(dǎo)致效率的降低。數(shù)據(jù)查詢(xún)效率和檢索處理速度已經(jīng)成為衡量數(shù)據(jù)庫(kù)性能的一個(gè)重要指標(biāo)。為了優(yōu)化數(shù)據(jù)庫(kù)的性能,除了改進(jìn)數(shù)據(jù)庫(kù)的硬件條件、軟件環(huán)境和規(guī)范化設(shè)計(jì)外,還應(yīng)該進(jìn)行數(shù)據(jù)查詢(xún)的優(yōu)化。我認(rèn)為可以從以下幾方面進(jìn)行查詢(xún)優(yōu)化。

        一、索引優(yōu)化

        索引的概念:索引是對(duì)數(shù)據(jù)庫(kù)表中一個(gè)或多個(gè)字段的值進(jìn)行排序的一種數(shù)據(jù)結(jié)構(gòu),使用索引可以快速訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)表中的特定數(shù)據(jù)。數(shù)據(jù)庫(kù)索引就好比一本書(shū)的目錄,能加快數(shù)據(jù)庫(kù)的查詢(xún)速度,索引又分為聚集索引和非聚集索引,聚集索引是按照數(shù)據(jù)存放的物理位置為順序,而非聚集索引則不是。聚集索引能提高多行檢索的速度,非聚集索引對(duì)單行檢索很快。

        索引的使用原則:(1)索引要建立在使用率高的字段上,這樣可以提高索引的使用率。(2)建立復(fù)合索引時(shí)要注意復(fù)合索引的順序要按照使用的頻度來(lái)確定。(3)在經(jīng)常需要排序和分組的字段上建立索引,以加快排序和分組的時(shí)間。(4)一般不在數(shù)據(jù)值較少的字段上建立索引。因?yàn)槿绻麛?shù)據(jù)值少的話(huà)有沒(méi)有索引對(duì)查詢(xún)效率影響并不明顯。(5)對(duì)于經(jīng)常存取修改的字段盡量不建立索引,因?yàn)檫@樣會(huì)帶來(lái)較大的維護(hù)工作。

        合理建立索引能提高檢索速度,但并不是索引越多越好,過(guò)多的索引會(huì)降低數(shù)據(jù)庫(kù)系統(tǒng)的整體性能,因?yàn)樗饕切枰到y(tǒng)維護(hù)它,并且會(huì)產(chǎn)生索引碎片,所以我們建立索引時(shí)要綜合考慮既要達(dá)到快速檢索的目的,又不能降低系統(tǒng)整體性能。

        二、SQL語(yǔ)句優(yōu)化

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

        (二)select子句的優(yōu)化。盡量減少select*的使用,用具體的列名代替*,過(guò)濾掉多余的列。使用top,distinct關(guān)鍵字減少多余重復(fù)的行,distinct在查詢(xún)一個(gè)字段或者很少字段的情況下使用,會(huì)避免重復(fù)數(shù)據(jù)的出現(xiàn),給查詢(xún)帶來(lái)優(yōu)化效果,但是查詢(xún)字段很多的情況下使用,則會(huì)大大降低查詢(xún)效率,所以當(dāng)查詢(xún)字段多的時(shí)候要慎用。

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

        例如:select pname from tb_product where pquality=A and ptype =電腦產(chǎn)品

        當(dāng)產(chǎn)品質(zhì)量大多為A時(shí),我們就可以把語(yǔ)句改為:select pname from tb_product where ptype=電腦產(chǎn)品and pquality=A

        這樣通過(guò)ptype=電腦產(chǎn)品這個(gè)條件過(guò)濾掉的數(shù)據(jù)行要比pquality=A過(guò)濾掉的數(shù)據(jù)行多,從而提高了查詢(xún)速度。

        三、避免相關(guān)子查詢(xún)

        子查詢(xún)的效率一般沒(méi)有連接查詢(xún)高,應(yīng)該盡量用連接查詢(xún)來(lái)代替子查詢(xún)。除非必要,一般不要寫(xiě)有子查詢(xún)的語(yǔ)句,如果必須用子查詢(xún)的時(shí)候,在子查詢(xún)里寫(xiě)盡量多條件,使得子查詢(xún)返回的行數(shù)盡量少。

        四、建立視圖

        視圖可簡(jiǎn)化用戶(hù)操作數(shù)據(jù)的方式,使用戶(hù)能著重于所感興趣的特定數(shù)據(jù)。如果該視圖數(shù)據(jù)規(guī)模小于基本表,則基于視圖的查詢(xún)比原查詢(xún)的速度會(huì)快得多。

        五、使用存儲(chǔ)過(guò)程

        把常用的查詢(xún)語(yǔ)句編寫(xiě)成存儲(chǔ)過(guò)程,以此來(lái)取代應(yīng)用程序中的查詢(xún)語(yǔ)句,可以很大程度的增加SQL語(yǔ)句執(zhí)行效率。存儲(chǔ)過(guò)程是一個(gè)可重用的代碼模塊,存儲(chǔ)過(guò)程創(chuàng)建后,可以在程序中任意調(diào)用,減少了重新編譯的時(shí)間。

        編寫(xiě)性能優(yōu)化的SQL語(yǔ)句是提高數(shù)據(jù)庫(kù)系統(tǒng)的重要因素,隨著數(shù)據(jù)庫(kù)管理系統(tǒng)中數(shù)據(jù)量的增大,如何提高查詢(xún)速度與效率也是計(jì)算機(jī)軟件開(kāi)發(fā)的一個(gè)時(shí)代要求。實(shí)現(xiàn)優(yōu)化查詢(xún)的方法很多,在使用中,要根據(jù)具體情況權(quán)衡利弊,使數(shù)據(jù)庫(kù)查詢(xún)性能最優(yōu)。

        參考文獻(xiàn):

        [1]黃崇本,韋存存.SQL SERVER數(shù)據(jù)庫(kù)技術(shù)與應(yīng)用 大連理工大學(xué)出版社,2014

        [2]祁鵬年,數(shù)據(jù)庫(kù)查詢(xún)優(yōu)化淺析,計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2014

        [3]張燕琴,基于SQL Server數(shù)據(jù)庫(kù)的查詢(xún)優(yōu)化,軟件導(dǎo)刊,2012

        [4]商惠華,關(guān)系數(shù)據(jù)庫(kù)SQL查詢(xún)語(yǔ)句的優(yōu)化,2014.

        猜你喜歡
        關(guān)系數(shù)據(jù)庫(kù)
        關(guān)系數(shù)據(jù)庫(kù)在高爐數(shù)據(jù)采集系統(tǒng)中的應(yīng)用
        山東冶金(2022年2期)2022-08-08 01:51:30
        關(guān)系數(shù)據(jù)庫(kù)技術(shù)在計(jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)中的應(yīng)用
        計(jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)中關(guān)系數(shù)據(jù)庫(kù)技術(shù)的應(yīng)用
        基于索引結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵詞檢索
        一種基于數(shù)據(jù)圖劃分的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵詞檢索方法
        基于用戶(hù)反饋的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵字查詢(xún)系統(tǒng)
        特级毛片a级毛片免费播放| 亚洲精品无人区| 精品无码国产一区二区三区av| 亚洲色欲久久久综合网| 国产精品无套内射迪丽热巴| 国产AV无码专区久久精品网站| 小荡货奶真大水真多紧视频| 青草国产精品久久久久久| 久久夜色撩人精品国产小说| 亚洲成在人线电影天堂色| 亚洲性色ai无码| 国产精品女同二区五区九区 | 午夜男女靠比视频免费| 东北女人啪啪对白| 不卡一卡二卡三乱码免费网站| 国产青草视频在线观看| 国产剧情福利AV一区二区| 天天摸天天做天天爽天天舒服| 69精品人妻一区二区| 人妻中文字幕一区二区三区| 女人被躁到高潮嗷嗷叫免| 欧洲乱码伦视频免费| 亚洲另类欧美综合久久图片区 | 国产成人AV无码精品无毒| 久久亚洲精精品中文字幕早川悠里| 日韩少妇人妻中文字幕| 把女的下面扒开添视频| 成人综合网亚洲伊人| 日韩不卡av高清中文字幕 | 日本一区二区三区免费| 国产激情一区二区三区在线| 国产亚洲成av人片在线观黄桃| 永久免费观看国产裸体美女 | 黄色潮片三级三级三级免费| 亚洲av综合国产av日韩| 男女啪啪永久免费观看网站 | 日韩欧美精品有码在线观看| 中文字幕中文字幕人妻黑丝| 精彩视频在线观看一区二区三区| 国产午夜福利在线观看红一片| 久久婷婷国产剧情内射白浆|