mysql索引--(mysql学习二)_MySQL
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
推荐阅读
-
MySQL5.7完全卸载步骤详解
-
概述MySQL统计信息
-
mysql 5.7以上版本安装配置方法图文教程(mysql 5.7.12mysql 5.7.13mysql 5.7.14)
-
MySQL常见内存不足启动失败的完美解决方法
-
随机生成八位优惠码并保存至Mysql数据库
-
Mysql5.7中使用group concat函数数据被截断的问题完美解决方法
-
Mysql5.7.17 winx64.zip解压缩版安装配置图文教程
-
MySQL SQL语句分析与查询优化详解
-
Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)
-
解决mysql ERROR 1045 (28000)-- Access denied for user问题