查詢百萬級數據中今天的數據,優化方案如下:
1. 索引優化
確保 scantime 列上有合適的索引,如:
create index idx_scantime on bns_pm_scanhistory_month (scantime)
2. 使用分區表
如果數據量非常大,可以考慮將表分區,按時間范圍分區,這樣查詢時只掃描需要的數據分區。
3. 優化查詢語句
可以嘗試以下優化后的查詢語句:
SELECT * FROM bns_pm_scanhistory_month WHERE DATE(ScanTime) = CURDATE()
4. 檢查其他潛在問題
確保數據庫配置正確,如:
- 索引失效
- 緩沖池大小不足
- 連接數過多
- 表不是 innodb 引擎
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END