php+mysql查詢優(yōu)化簡單實例
本文實例分析了php+mysql查詢優(yōu)化的方法。分享給大家供大家參考。具體分析如下:
PHP+Mysql是一個最經(jīng)常使用的黃金搭檔,它們倆配合使用,能夠發(fā)揮出最佳性能,當然,如果配合Apache使用,就更加Perfect了.
因此,需要做好對mysql的查詢優(yōu)化,下面通過一個簡單的例子,展現(xiàn)不同的SQL語句對于查詢速度的影響.
存在這樣的一張表test,它有一個自增的id作為主索引,現(xiàn)在要查詢id號處于某一個范圍內(nèi)的記錄,可以使用如下SQL語句:
FROM `test`
order by id asc
limit 208888,50
這條SQL語句的意思是從id號為208888的記錄開始向后取50條記錄,在一個30萬條記錄的數(shù)據(jù)庫中測試,在主索引都已經(jīng)建立好的情況下,執(zhí)行這條語句的時間為40~50秒,那么有沒有更快SQL語句來執(zhí)行呢?顯然是有的,看看下面這條SQL語句:
FROM `test`
WHERE id
BETWEEN 208838
AND 208888
這條語句使用了一個條件進行過濾,在實際中測試的執(zhí)行時間約為0.06秒.
究其原因,是因為雖然id屬性上已經(jīng)有索引了,但是排序仍然是一個非常高代價的操作,要慎用,而第二個語句,就可以讓MySql充分利用數(shù)據(jù)庫中已經(jīng)建立好的B+樹索引,所以查找起來速度相當快,是原來的幾百倍.
由此可見,網(wǎng)站開發(fā)者在使用SQL語句的時候,一定要小心謹慎,因為一個疏忽大意的SQL語句,可能使得你的網(wǎng)站訪問速度急劇下降,后臺數(shù)據(jù)庫面臨巨大壓力,并且很快陷入無法打開頁面的窘境.
希望本文所述對大家的php+mysql程序設計有所幫助。
- PHP執(zhí)行批量mysql語句的解決方法
- 使用phpMyAdmin批量修改Mysql數(shù)據(jù)表前綴的方法
- php+mysqli實現(xiàn)批量執(zhí)行插入、更新及刪除數(shù)據(jù)的方法
- php+mysqli批量查詢多張表數(shù)據(jù)的方法
- php往mysql中批量插入數(shù)據(jù)實例教程
- PHP mysqli 增強 批量執(zhí)行sql 語句的實現(xiàn)代碼
- php從memcache讀取數(shù)據(jù)再批量寫入mysql的方法
- php+mysqli實現(xiàn)批量替換數(shù)據(jù)庫表前綴的方法
- php中批量刪除Mysql中相同前綴的數(shù)據(jù)表的代碼
- PHP實現(xiàn)mysqli批量執(zhí)行多條語句的方法示例
- PHP數(shù)據(jù)庫編程之MySQL優(yōu)化策略概述
- PHP優(yōu)化之批量操作MySQL實例分析
相關文章
php中字符集轉(zhuǎn)換iconv函數(shù)使用總結(jié)
這篇文章主要介紹了php中字符集轉(zhuǎn)換iconv函數(shù)使用總結(jié),本文同時介紹了mb_convert_encoding函數(shù),需要的朋友可以參考下2014-10-10
PHP基于curl post實現(xiàn)發(fā)送url及相關中文亂碼問題解決方法
這篇文章主要介紹了PHP基于curl post實現(xiàn)發(fā)送url及相關中文亂碼問題解決方法,結(jié)合具體實例形式分析了php使用curl實現(xiàn)post數(shù)據(jù)發(fā)送及content-type相關設置操作技巧,需要的朋友可以參考下2017-11-11
php getimagesize 上傳圖片的長度和寬度檢測代碼
getimagesize — 取得圖像大小2010-05-05

