索引 就是目录
索引的用处就是查东西的时候不用一页一页的翻找 你根据索引就能直接跳到精准的那一页
可以这么说,最适合做索引的字段是出现在where条件中的字段,或表连接子句中的字段。
如果有某个字段重复量很少,那么给它加上索引来查询的效果是非常爽的。
过多则慢,每个索引都会占据磁盘空间,并降低写操作性能,在修改表的同时,索引也要进行更新,所以索引越多,所花费的时间越长,索引越多,会导致mysql优化器查询的时候出现选择困难症。
这个不用想太多,主键自增非空直接扔给id字段,这个不用讲什么道理不道理的,就两字:规范。
加上唯一索引之后,这个字段将不能出现重复值。(其实我有时候加这个索引不是为了查询,而是为了保证值的唯一性 ^.^ )
就是普通的索引,为了查询而存在。
一般来说,组合索引是用在保证组合唯一的需求上,比如a字段和b字段的组合值必须唯一,还需要知道的是,组合索引ab,当我只拿索引中的单个字段来查时,如where a="xxx" 时,会使用到这个索引,但是如果我where b="xxx"时,是不会使用到这个索引的,所以组合索引以左边索引为主索引。
还有一种叫全文索引,也就是在文本中搜索关键字的时候有这个索引需求,这个索引只支持myisam,而最新的mysql8.0已经废弃了myisam引擎,所以它正在死亡的路上
建表的时候,结合业务思考一下这张表在查询时经常要出现在where条件中的字段,在心里按照使用频率排个序,挑频率最高的一到两个用来做索引。
如对本文有疑问, 点击进行留言回复!!
SSD原理及Pytorch代码解读——网络架构(二):特征提取网络及总体计算过程
集合类 ArrayList 和 LinkedList 直接用 Innodb(MySQL 5.0
网友评论