文章詳情頁
mysql普通索引效率
瀏覽:114日期:2022-06-14 13:04:28
問題描述
select * from post where zhuanid = 0 and catid <> 10 and empty =0;1、本SQL語句:唯一性太差的還要建索引嗎 比如empty 就是0或者1 catid一共就8個數(shù) 但表數(shù)據(jù)量是上百萬
2、還有2個及2個以上條件查詢的 必須要將全部字段建一個復(fù)合索引嗎
3、如果如上三個字段分別建了一個普通索引 這個and會使用索引嗎
對多個查詢條件的索引概念比較模糊 但我現(xiàn)在數(shù)據(jù)庫的CPU非常高
問題解答
回答1:具體問題具體分析。唯一性太差的沒必要創(chuàng)建獨立索引。建議創(chuàng)建聯(lián)合索引,并調(diào)整查詢語句。(zhanid,catid,empty)。語句改寫成 zhuanid = 0 and catid in(a,b,c,d,e) and empty =0
回答2:<> 這個是不是干掉索引了?
負向查詢條件:NOT、!=、<>、!<、!>、NOT IN、NOT LIKE等,會導(dǎo)致全表掃描
回答3:select 值得懷疑一下是否是必要的,分別索引的話,mysql優(yōu)化器會有自己的判。你這個可以走覆蓋索引
相關(guān)文章:
1. java - 阿里的開發(fā)手冊中為什么禁用map來作為查詢的接受類?2. android - 百度地圖加載完成監(jiān)聽3. 關(guān)于docker下的nginx壓力測試4. nignx - docker內(nèi)nginx 80端口被占用5. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?6. dockerfile - [docker build image失敗- npm install]7. dockerfile - 我用docker build的時候出現(xiàn)下邊問題 麻煩幫我看一下8. python3.x - git bash如何運行.bat文件?9. golang - 用IDE看docker源碼時的小問題10. docker api 開發(fā)的端口怎么獲取?
排行榜

熱門標簽