文章詳情頁
mysql普通索引效率
瀏覽:110日期: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個(gè)數(shù) 但表數(shù)據(jù)量是上百萬
2、還有2個(gè)及2個(gè)以上條件查詢的 必須要將全部字段建一個(gè)復(fù)合索引嗎
3、如果如上三個(gè)字段分別建了一個(gè)普通索引 這個(gè)and會(huì)使用索引嗎
對(duì)多個(gè)查詢條件的索引概念比較模糊 但我現(xiàn)在數(shù)據(jù)庫的CPU非常高
問題解答
回答1:具體問題具體分析。唯一性太差的沒必要?jiǎng)?chuàng)建獨(dú)立索引。建議創(chuàng)建聯(lián)合索引,并調(diào)整查詢語句。(zhanid,catid,empty)。語句改寫成 zhuanid = 0 and catid in(a,b,c,d,e) and empty =0
回答2:<> 這個(gè)是不是干掉索引了?
負(fù)向查詢條件:NOT、!=、<>、!<、!>、NOT IN、NOT LIKE等,會(huì)導(dǎo)致全表掃描
回答3:select 值得懷疑一下是否是必要的,分別索引的話,mysql優(yōu)化器會(huì)有自己的判。你這個(gè)可以走覆蓋索引
上一條:數(shù)據(jù)類型 - mysql里mediumint類型如果手動(dòng)把“長度”設(shè)為3,會(huì)有影響嗎?下一條:mysql - SQL:這個(gè)針對(duì)兩個(gè)表的查詢能不能使用一個(gè)語句完成?
相關(guān)文章:
1. win10 python3.5 matplotlib使用報(bào)錯(cuò)2. 數(shù)組排序,并把排序后的值存入到新數(shù)組中3. html5 - css3scale和rotate同時(shí)使用轉(zhuǎn)換成matrix寫法該如何轉(zhuǎn)換?4. MySQL的聯(lián)合查詢[union]有什么實(shí)際的用處5. php多任務(wù)倒計(jì)時(shí)求助6. PHP訂單派單系統(tǒng)7. python的正則怎么同時(shí)匹配兩個(gè)不同結(jié)果?8. 默認(rèn)輸出類型為json,如何輸出html9. mysql 遠(yuǎn)程連接出錯(cuò)10060,我已經(jīng)設(shè)置了任意主機(jī)了。。。10. 為何 localStorage、sessionStorage 屬于html5的范疇,但是為何 IE8卻支持?
排行榜

熱門標(biāo)簽