mysql單列索引與聯合索引介紹

2021-10-06 15:04:40 字數 1540 閱讀 1721

#mysql單列索引與聯合索引介紹

--

1.or兩邊乙個單列索引,乙個沒索引,索引不生效()

explain

select

*from me_sku

where sku_name_code =

'jcxcmft'

or product_id =

'7016497'

--2.

or兩邊都是單列索引,兩個索引生效

(多個or,多個單列索引均生效)

,只要有乙個條件不是索引就不走索引

explain

select

*from me_sku

where sku_name_code =

'jcxcmft'

or original_product_code =

'1012561000181'

or spec =

'2只'

or package_unit =

'21383'

--3.

and兩邊都是單列索引,兩個索引只有乙個生效

(多個and多個單列索引也只有乙個索引生效)

explain

select

*from me_sku

where sku_name_code =

'jcxcmft'

and original_product_code =

'1012561000181'

and spec =

'2只'

and package_unit =

'21383'

--4.

or兩邊聯合索引,用or不啟用索引()

explain

select

*from me_sku

where sku_code =

'q5190007'

or spu_code =

'1208631'

alter

table me_sku drop

column sku_alias_text

--5.

資料量較小的時候,or兩邊都是單列索引,也不啟用索引

(資料量大起作用)

explain

select

*from orderitem

where pid =

'35'

or oid =

'7455381656944af79b00568f1663984e'

--6.

大於號小於號

(視實際情況確定是否啟用索引)

explain

select

*from me_sku

where standard_lib_id <

5020595

and update_user =

'zhongtai_test6'

and quality_standard =

'q/jyw003-2018'

mysq l單列索引 or 聯合索引

在使用資料庫的時候會經常使用到索引,單列索引是最常見 使用最多的,但是我們也經常遇到需要使用聯合索引的場景,下邊簡單說明如何抉擇使用何種索引。1,首先要確定優化的目標,在什麼樣的業務場景下,表的大小等等。如果表比較小的話,可能都不需要加索引 2,哪些字段需要建索引,一般都where order by...

MySQL單列索引和聯合索引

所有的mysql列型別能被索引。在相關的列上的使用索引是改進select操作效能的最好方法。乙個表最多可有16個索引。最大索引長度是256個位元組,儘管這可以在編譯mysql時被改變。對於char和varchar列,你可以索引列的字首。這更快並且比索引整個列需要較少的磁碟空間。在create tab...

MySQL單列索引和聯合索引

mysql單列索引和聯合索引 所有的mysql列型別能被索引。在相關的列上的使用索引是改進select操作效能的最好方法。乙個表最多可有16個索引。最大索引長度是256個位元組,儘管這可以在編譯mysql時被改變。對於char和varchar列,你可以索引列的字首。這更快並且比索引整個列需要較少的磁...