我們專注于高端品牌網(wǎng)站創(chuàng)意設計與開發(fā)
1、分頁時統(tǒng)計頁面總數(shù)不要使用mysql_num_rows,而是使用select count,二者效率相差百倍。可以只統(tǒng)計一次,用memcached等方式儲存,避免多次對數(shù)據(jù)庫的操作。
2、limit語句可以寫成limit 20 offset 10000
3、關鍵字段建立索引。列重復內(nèi)容過多的時候,索引并不會mysql引擎使用。一個表上的索引量最好不要超過六個,索引雖然提高了select的效率,但是同樣會降低插入和更新的效率。
4、避免在where中做空值判斷、非判斷、模糊匹配,or查詢可以改成union查詢效率會極大提升。
例如select * from table where types=1 or types=2
可以改為select * from table where types=1 union select * from table where types=2;
5、in或not in查詢可以改成between,或者比如一個跨表的查詢可以這樣
select * from table1 where nid in (select nid from table2 where……);
select a.* from table1 a inner join table2 b on a.nid= b.nid where …….;
like模糊匹配可以使用FULLTEXT索引替代改成全文檢索。
6、在使用索引字段作為條件時,如果該索引是復合索引,那么必須使用到該索引中的第一個字段作為條件時才能保證系統(tǒng)使用該索引,否則該索引將不會被使用,并且應盡可能的讓字段順序與索引順序相一致。
7、exists 和 in的效率比較。參考資料http://www.cnblogs.com/meibao/p/4973043.html
8、純數(shù)字使用數(shù)字型字段,varchar/nvarchar > char/nchar,控制字段大小,盡量避免允許為空
9、未完待續(xù)……
文章引用:http://www.duhuilife.cn/new/211.html
本站文章為深圳網(wǎng)站建設·源美網(wǎng)絡原創(chuàng)策劃,如有版權糾紛或者違規(guī)問題,請聯(lián)系我們刪除,謝謝!
售后保障
承諾任何問題1小時內(nèi)解決數(shù)據(jù)備份
更安全、更高效、更穩(wěn)定價格公道精準
項目經(jīng)理精準報價不弄虛作假合作無風險
重合同講信譽,無效全額退款