數(shù)據(jù)庫應(yīng)用優(yōu)化
數(shù)據(jù)庫無論是哪門語言應(yīng)用中都必不可少,現(xiàn)在的數(shù)據(jù)庫種類也非常的多種多樣大到服務(wù)型數(shù)據(jù)庫小到文件存儲類數(shù)據(jù)庫,一些中小型項目對數(shù)據(jù)庫簡單了解也都可以有比較好的應(yīng)用,如果要更合理,合理效率利用數(shù)據(jù)庫需要一利遵循原則的優(yōu)化,當數(shù)據(jù)庫量多大如10w條記錄做一些簡單優(yōu)化會有比較明顯的效果。
不要在sql上進行運算,這樣會導(dǎo)致索引失效
SELECT * FROM test WHERE YEAR(d) > =2011
優(yōu)化為
SELECT * FROM test WHERE d > =’2011 -01 -01’
使用join時盡量據(jù)JOIN查詢拆分為多個查詢
SELECT * FROM a JOIN b on a.id=b.id
LEFT JOIN c ON c.pid=a.pid
使用LIKE模糊 查詢時盡量少用%%
SELECT * FROM text WHERE title LIKE ‘%name%’
優(yōu)化為
SELECT * FROM text WHERE title >=’name’ AND title<’name’
4) 查詢時只列出需要字段不會對速度有明顯的影響但會節(jié)省內(nèi)存
SELECT * FROM text
優(yōu)化為
SELECT id,title FROM text
5) 盡量使用批量插入語句可節(jié)省與數(shù)據(jù)庫交互連接
INSERT INTO text(id,name) VALUES(1,‘a’)
INSERT INTO text(id,name) VALUES(2,‘a’)
INSERT INTO text(id,name) VALUES(3,‘a’)
優(yōu)化為
NSERT INTO text(id,name) VALUES (1,’a’), (2,’a’), (3,’a’)
6) limit基數(shù)較大時可以使用between
SELECT * FROM text ORDER BY ID LIMIT 100000,10
優(yōu)化為
SELECT * FROM text WHERE ID BETWEEN 10000 AND 1000010 ORDER BY ID
7) 千萬不要使用rnad函數(shù)獲取多條記錄
8) 不要使用默認NULL
9) 不要使用count(id) ,應(yīng)該使用count(*)
10) 排序時不要盡量使用引索值不要使用無關(guān)的字段
11) 索引的合理使用可以更合更的查詢大量數(shù)據(jù)
名稱欄目:數(shù)據(jù)庫應(yīng)用優(yōu)化
網(wǎng)站路徑:http://jinyejixie.com/news/182509.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗、網(wǎng)站營銷、關(guān)鍵詞優(yōu)化、動態(tài)網(wǎng)站、虛擬主機、搜索引擎優(yōu)化
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)