工作中处理数据时,发现某个表的数据达近亿条,所以要为表建索引提高查询性能,以下两篇文章总结的很好,记录一下,以备后用。 数据库建立索引常用的规则如下: 1、表的主键、外键必须有索引; 2、数据量超过300的表应该有索引; 3、经常与其他表进行连接的表,在连接字段上应该建立索引; 4、经常出现 ...
值重复率高的字段不适合建索引 理论文章会告诉你值重复率高的字段不适合建索引。不要说性别字段只有两个值,网友亲测,一个字段使用拼音首字母做值,共有 种可能,加上索引后,百万加的数据量,使用索引的速度比不使用索引要慢 通过上述的实验数据,我们可以得出关于枚举字段索引的结论: 如果where 只查索引字段,查询会使用索引,且效率提升明显 如果where 查询索引字段 非索引字段,如果查询索引枚举值较少的 ...
2021-08-16 18:21 0 216 推荐指数:
工作中处理数据时,发现某个表的数据达近亿条,所以要为表建索引提高查询性能,以下两篇文章总结的很好,记录一下,以备后用。 数据库建立索引常用的规则如下: 1、表的主键、外键必须有索引; 2、数据量超过300的表应该有索引; 3、经常与其他表进行连接的表,在连接字段上应该建立索引; 4、经常出现 ...
工作中处理数据时,发现某个表的数据达近亿条,所以要为表建索引提高查询性能,以下两篇文章总结的很好,记录一下,以备后用。 数据库建立索引常用的规则如下: 1、表的主键、外键必须有索引; 2、数据量超过300的表应该有索引; 3、经常与其他表进行连接的表,在连接字段上应该建立索引; 4、经常出现 ...
1、字段类型设计原则 更小的就是更好的:更小的字段类型通常更快,以为它们占用更小的磁盘、内存、缓存使用,降低I/O开销,而且需要的CPU处理周期更短。 简单就好:简单的数据类型需要更少的CUP周期 尽量避免NULL:可为NULL的列会使用更多的存储空间,当这个字段作为索引时,每个 ...
1. 使用方式 1.1 全字段加索引 给整个字段加索引,索引存储整个字段的值。 数据量较小时,查询成本高,准确度高; 数据量较大时,比较耗费空间; 1.2 前缀索引 MySQL支持前缀索引,可以定义字符串的前面的一部分字节作为索引。 查询成本低,比较节省空间 ...
...
mysql为什么有时会选错索引 场景例子:一张表里有a,b两个字段,并分别建立以下索引 表中数据从(1,1,1)到(100000,100000,100000)共10万行记录。 接下来分析一条sql语句:select * from t where ...
不同于oracle,在mysql的Innodb存储引擎中,对索引的总长度有限制。在mysql 5.7中(https://dev.mysql.com/doc/refman/5.7/en/innodb-restrictions.html),默认为3072 ...
经常需要进行更新操作的属性 1、表的主键、外键必须有索引;2、数据量超过300的表应该有索引;3、经常与其他表进行连接的表,在连接字段上应该建立索引;4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;5、索引应该建在选择性高的字段上;6、索引应该建在小字段上,对于大的文本字段 ...