mysql force index() 強制索引的使用

mysql force index() 強制索引的使用

 

以前跑了一個SQL,因爲其中一個表的數據量比較大,而在條件中有破壞索引或使用了不少其餘索引,就會使得sql跑的很是慢。。。mysql

那咱們怎麼解決呢? sql

這時候我麼能夠使用mysql force index() 強制索引來優化查詢語句;優化

使用MySQL force index 強制索引的目的是對目標表添加最關鍵的索引,使其優先使用該索引篩選數據;spa

select * from ws_shop a 
where date(create_time-interval 6 hour) > '2016-10-01 06:00:00'

若是表中的數據是百萬級的,這樣查詢是比較慢的;雖然你有可能在字段create_time上面加了索引,可是在where條件中又破壞了索引;致使索引失效;code

這是咱們優化爲:blog

select * from ws_shop a force index(create_time)
where date(create_time-interval 6 hour) > '2016-10-01 06:00:00'
相關文章
相關標籤/搜索