成都網(wǎng)站建設(shè)之網(wǎng)站數(shù)據(jù)庫(kù)優(yōu)化

2024-01-21    分類(lèi): 網(wǎng)站建設(shè)

隨著成都網(wǎng)站建設(shè)網(wǎng)站的使用時(shí)間越來(lái)越久,網(wǎng)站數(shù)據(jù)的存儲(chǔ)量越來(lái)越大,服務(wù)器的性能需要更好地去優(yōu)化,才能保證網(wǎng)站更優(yōu)秀地運(yùn)行。近日,我們?cè)诰W(wǎng)上找了好多關(guān)于SQL優(yōu)化的教程,感覺(jué)這篇教程講的很詳細(xì),效果更為明顯。現(xiàn)在推薦給大家,大家一起學(xué)習(xí),一起進(jìn)步。

成都網(wǎng)站建設(shè)

網(wǎng)上關(guān)于數(shù)據(jù)庫(kù)優(yōu)化的教程有很多,但是又多又亂的。最近因?yàn)榉?wù)器需要優(yōu)化一下,所以從網(wǎng)上整理了一些,寫(xiě)出來(lái)跟大家分享一下,有什么不對(duì)和不足的地方,還請(qǐng)大家糾正補(bǔ)充。這篇文章我花費(fèi)了大量的時(shí)間查找資料、修改、排版,希望大家閱讀之后,感覺(jué)好的話(huà)推薦給更多的人,讓更多的人看到、學(xué)習(xí)、糾正補(bǔ)充。

1.盡量避免在 where 子句中使用 or 來(lái)連接條件,如果一個(gè)字段有索引,一個(gè)字段沒(méi)有索引,將導(dǎo)致引擎放棄使用索引而進(jìn)行全表掃描,如:

selectid fromt wherenum=10orName ='admin'

可以這樣查詢(xún):

selectid fromt wherenum = 10

unionall

selectid fromt whereName ='admin'

2.盡量避免在 where 子句中對(duì)字段進(jìn)行 null 值判斷,否則將導(dǎo)致引擎放棄使用索引而進(jìn)行全表掃描,如:

selectid fromt wherenum isnull

最好不要給數(shù)據(jù)庫(kù)留NULL,盡可能的使用NOT NULL填充數(shù)據(jù)庫(kù).

備注、描述、評(píng)論之類(lèi)的不重要的可以設(shè)置為NULL,其他的,最好不要使用NULL。不要以為NULL 不需要占用空間,比如:char(100) 型,在字段建立時(shí),空間就固定了,不管是不是插入值(NULL也包含在內(nèi)),都是占用100個(gè)字符的空間的,如果是varchar這樣的變長(zhǎng)字段,null 不占用空間??梢栽趎um上設(shè)置默認(rèn)值0,確保表中num列沒(méi)有null值,然后這樣查詢(xún):

selectid fromt wherenum =0

3.應(yīng)盡量避免在 where 子句中使用 != 或 <> 操作符,否則將引擎放棄使用索引而進(jìn)行全表掃描。

4.適當(dāng)?shù)臅r(shí)候應(yīng)該考慮在where 及 order by 涉及的列上建立索引。以提高查詢(xún)速度。

5.下面的查詢(xún)也會(huì)導(dǎo)致全表掃描:

selectid fromt wherename like‘%abc%’

若要提高效率,可以考慮全文檢索的哦。

6.in 和 not in 也要慎用,否則也會(huì)導(dǎo)致全表掃描。

7.應(yīng)盡量避免在where子句中對(duì)字段進(jìn)行函數(shù)操作,這將導(dǎo)致引擎放棄使用索引,而進(jìn)行全表掃描。如:

selectid fromt wheresubstring(name,1,3) = ’abc’ -–name以abc開(kāi)頭的id

selectid fromt wheredatediff(day,createdate,’2005-11-30′) = 0 -–‘2005-11成都網(wǎng)站建設(shè)之網(wǎng)站數(shù)據(jù)庫(kù)優(yōu)化
URL地址:http://www.bm7419.com/news42/314742.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷(xiāo)型網(wǎng)站建設(shè)網(wǎng)站改版、微信小程序、網(wǎng)站營(yíng)銷(xiāo)外貿(mào)建站、微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名