SELECT `id`,`ptime`,`title`,`area` FROM `post`
force index (ix_type_status_dtime_cid_ptime)
WHERE `type` = 1 AND `status` = 1 AND `dtime` = 0 AND `cid` = 14
ORDER BY ptime` DESC LIMIT 150330,10
說明:
post表中有幾百萬記錄;
通過where陳述句條件過濾后,需要待查詢的限定分類記錄有15萬條,
在此基礎上做分頁查詢的時候慢的要死,一次查詢要40多秒,求教優化方法。
謝謝!
uj5u.com熱心網友回復:
用延遲連接試試吧SELECT `id`,`ptime`,`title`,`area` FROM `post` as a inner join
(SELECT `id` FROM `post`
force index (ix_type_status_dtime_cid_ptime)
WHERE `type` = 1 AND `status` = 1 AND `dtime` = 0 AND `cid` = 14
ORDER BY ptime` DESC LIMIT 150330,10 ) as b
on a.id=b.id
我這里假定id是主鍵,如果實際上不是,請改為主鍵欄位
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/19836.html
標籤:MySQL
上一篇:SQL查詢問題
下一篇:VFP 怎么獲取 GMT時間
