php mysql 一個查詢優化的簡單例子
PHP+Mysql是一個最經常使用的黃金搭檔,它們倆配合使用,能夠發揮出最佳效能,當然,如果配合Apache使用,就更加Perfect了。
因此,需要做好對mysql的查詢優化。下面通過一個簡單的例子,展現不同的SQL語句對於查詢速度的影響:
存在這樣的一張表test,它有一個自增的id作為主索引。現在要查詢id號處於某一個範圍內的記錄,可以使用如下SQL語句:
程式碼如下 | 複製程式碼 |
SELECT * FROM `test` order by id asc limit 208888,50 |
這條SQL語句的意思是從id號為208888的記錄開始向後取50條記錄。在一個30萬條記錄的資料庫中測試,在主索引都已經建立好的情況下,執行這條語句的時間為40~50秒。
那麼有沒有更快SQL語句來執行呢?顯然是有的。看看下面這條SQL語句:
程式碼如下 | 複製程式碼 |
SELECT * FROM `test` WHERE id BETWEEN 208838 AND 208888 |
這條語句使用了一個條件進行過濾,在實際中測試的執行時間約為0.06秒。
究其原因,是因為雖然id屬性上已經有索引了,但是排序仍然是一個非常高代價的操作,要慎用。而第二個語句,就可以讓MySql充分利用資料庫中已經建立好的B+樹索引,所以查詢起來速度相當快,是原來的幾百倍。
由此可見,網站開發者在使用SQL語句的時候,一定要小心謹慎,因為一個疏忽大意的SQL語句,可能使得你的網站訪問速度急劇下降,後臺資料庫面臨巨大壓力,並且很快陷入無法開啟頁面的窘境
相關文章
- Laravel 關聯查詢 ——一對一 簡單例子Laravel單例
- MySQL 的查詢優化MySql優化
- MySQL查詢優化MySql優化
- Laravel 5 關聯查詢 ——一對 N 簡單例子Laravel單例
- MySQL - 資料查詢 - 簡單查詢MySql
- 一個簡單的「IOC」例子
- 一個查詢不走索引的例子索引
- MySQL優化COUNT()查詢MySql優化
- MySQL 慢查詢優化MySql優化
- MySQL的簡單查詢語句MySql
- mysql查詢優化檢查 explainMySql優化AI
- MySQL調優之查詢優化MySql優化
- 擼一個簡單的MVVM例子MVVM
- MySQL索引與查詢優化MySql索引優化
- MySQL查詢優化利刃-EXPLAINMySql優化AI
- MySQL分頁查詢優化MySql優化
- Laravel 5 關聯查詢 —— N 對 N 簡單例子Laravel單例
- 一個最簡單的 Github workflow 例子Github
- mysql查詢快取簡單使用MySql快取
- MySQL-效能優化-索引和查詢優化MySql優化索引
- MySQL——優化巢狀查詢和分頁查詢MySql優化巢狀
- TiDB 查詢優化及調優系列(一)TiDB 優化器簡介TiDB優化
- spring 簡單的使用 Hikari連線池 和 jdbc連線mysql 的一個簡單例子SpringJDBCMySql單例
- 十七、Mysql之SQL優化查詢MySql優化
- 【資料庫】MySQL查詢優化資料庫MySql優化
- Mysql 慢查詢優化實踐MySql優化
- MySQL: 使用explain 優化查詢效能MySqlAI優化
- mysql查詢效能優化總結MySql優化
- 一個簡單的netty通訊的例子Netty
- MySQL查詢中分頁思路的優化BFMySql優化
- KunlunDB 查詢優化(一)優化
- JUnit概述及一個簡單例子單例
- 簡單的查詢
- WebRTC:一個視訊聊天的簡單例子Web單例
- 對 MySQL 慢查詢日誌的簡單分析MySql
- 一個簡單的生活例子,感受TRIZ的魅力!
- MySQL分優化之超大頁查詢MySql優化
- MySQL 索引及查詢優化總結MySql索引優化
- [玩轉MySQL之六]MySQL查詢優化器MySql優化