Heim  >  Artikel  >  Datenbank  >  mysql索引--(mysql学习二)_MySQL

mysql索引--(mysql学习二)_MySQL

WBOY
WBOYOriginal
2016-06-01 13:32:461186Durchsuche

bitsCN.com

mysql索引--(mysql学习二)

 

索引类型:

普通类型索引

primary key 

foreign key

unique index

non-unique

专业索引:

--b-tree 平衡数索引,有别于二叉树.二叉树高度可能很高平衡树不会很高一般3、4层.

b+tree b-tree是逻辑叫法,b+tree是技术实现.有一部分存储在内存不够时会放到磁盘上.(innodb、MyISAM、Memery等)

r-tree 空间索引(MyISAM)

full text全文索引.(MyISAM)

hash index(Memery)

 

索引目的:

减少I/O,会提供查询速度,会影响dml速度.

选择性:返回行占整个记录的比例

 

索引类型:前缀索引、复合索引、函数索引的变通(通过增加列和触发器实现)、全文索引

复合索引:oracle有index skip算法可以使不是引导列的索引被使用.mysql必须按照定义顺序使用复合索引.

全文索引:主要是查询单词. ...where match(列) aginst('字符' in 模式).有3中模式boolean(支持运算符表达式)、自然语言、扩展自然语言.

 select title from books where mathc(title) against('prince')

 select title,author from books where match(title) against('green +Anne' in boolean mode);--in natural language mode/with query expansion

--查看执行计划

 explain select * from t where year(d) >1994/G

 select_type:subquery(使用子查询)、dependent subquery(关联子查询)、derived(子查询作为from,内嵌视图)、

       simple(简单查询) 

       union(使用了union)

 

查看某个表的索引:

show index from [tb_name]/G

 

bitsCN.com
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn