一些優(yōu)化建議:
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比平泉網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式平泉網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋平泉地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。1、SELECT語句執(zhí)行性能,可以通過explain語句來查看;
2、數(shù)據(jù)庫對象存儲過程比單條執(zhí)行語句速度快;
3、減少select * 出現(xiàn)的頻率;
4、索引可以加速數(shù)據(jù)查詢,但對于不是經(jīng)常查找的字段或表,最好不要建立索引;
5、LIKE關鍵字執(zhí)行效率低,一般通過“FULL TEXT”代替;
6、應盡量避免在 where 子句中使用 or 來連接條件,否則將導致引擎放棄使用索引而進行全表掃描,這樣不符合優(yōu)化原則,如:
select id from t where num=10 or num=20;可以這樣查詢:
select id from t where num=10 union all select id from t where num=20;7、in 和 not in 也要慎用,否則會導致全表掃描,如:
select id from t where num in(1,2,3);8、對于連續(xù)的數(shù)值,能用 between 就不要用 in 了:
select id from t where num between 1 and 3;9、很多時候用 exists 代替 in 是一個好的選擇。
select num from a where num in(select num from b);用下面的語句替換:
select num from a where exists(select 1 from b where num=a.num);10、盡量使用數(shù)字型字段,若只含數(shù)值信息的字段盡量不要設計為字符型,這會降低查詢和連接的性能,并會增加存儲開銷。這是因為引擎在處理查詢和連接時會逐個比較字符串中每一個字符,而對于數(shù)字型而言只需要比較一次就夠了。
11、盡可能的使用 varchar/nvarchar 代替 char/nchar ,因為首先變長字段存儲空間小,可以節(jié)省存儲空間,其次對于查詢來說,在一個相對較小的字段內(nèi)搜索效率顯然要高些。
12、避免頻繁創(chuàng)建和刪除臨時表,以減少系統(tǒng)表資源的消耗。
13、在新建臨時表時,如果一次性插入數(shù)據(jù)量很大,那么可以使用 select into 代替 create table,避免造成大量 log ,以提高速度;如果數(shù)據(jù)量不大,為了緩和系統(tǒng)表的資源,應先create table,然后insert。
14、盡量避免使用游標,因為游標的效率較差,如果游標操作的數(shù)據(jù)超過1萬行,那么就應該考慮改寫。
15、盡量避免向客戶端返回大數(shù)據(jù)量,若數(shù)據(jù)量過大,應該考慮相應需求是否合理。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。