性别不适合索引,mysql性别字段不适合做索引

本文详细介绍性别不适合索引的题和一些mysql性别字段不适合做索引相关的话题,希望对大家有帮助!

性别不适合索引

本文为排列短文,重要推荐36条来源一线的MySQL数据库开拓实战经验,每一一条经历暗地里都是血淋林的教育,如有一条让您有所获得好处,本文的目标就到达了啦。

本文将36条军规作了以下分类

一.焦点军规(5)

两.字段类军规(6)

三.索引类军规(5)

四.SQL类军规(15)

五.商定类军规(5)

为了防止珍藏不看,让我们更有耐性看下来,印象更透彻难忘些,小编将按以上分类分5次分-别公布这一些内容,本文是这个里面的第3篇,推荐索引类军规

郑重恰当增加索引

• 郑重恰当增加索引


    改良查


    放慢更新


    索引不-是越多越好

• 能不加的索引尽力不加


    综合评价数据密度和数据分布


    最棒不凌驾字段数20%

• 联合焦点SQL优先思考笼罩索引

• 举例


    不-要给“性别”列建立索引

字符字段必需建前缀索引

• 区分度


    单字母区分度26


    4字母区分度26*26*26*26=456,976


    5字母区分度

    26*26*26*26*26=11,881,376


    6字母区分度

    26*26*26*26*26*26=308,915,776

• 字符字段必需建前缀索引

`pinyin` varchar(100) DEFAULT NULL COMMENT '小区拼音',

KEY `idx_pinyin` (`pinyin`(8)),

) ENGINE=InnoDB

不在索引列作运算

• 不在索引列举行数学运算或者函数运算


    没法运用索引


    致使全表扫描

• 举例

BAD:select * from table WHERE to_days(current_date) – to_days(date_col) <= 10

GOOD: select * from table WHERE date_col >= DATE_SUB('2011-10-22',INTERVAL 10 DAY);

自增列或者全局ID作INNODB主键

    • 对主键建设聚簇索引


    • 二级索引存储主键值


    • 主键不应更新修正


    • 按自增顺着规律插进值


    • 忌用字符串做主键


    • 聚簇索引割裂


    • 保举用自力于营业的AUTO_INCREMENT列或者全局ID生成器作代办主键


    • 若不指定主键,InnoDB会用惟一且非空值索引取代

尽力不必外键

• 线上OLTP体系(线下体系另论)


    外键可节约开发量


    有分外开支


    逐行操纵


    可‘抵达’其余表,意味着锁


    高并发时简单死锁

• 由程-序确保管束

索引类军规小结

• 郑重恰当增加索引

• 字符字段必需建前缀索引

• 不在索引列作运算

• 自增列或者全局ID作INNODB主键

• 尽力不必外键

今天性别不适合索引和mysql性别字段不适合做索引的话题就讲到这里了,希望对大家有所帮助。

除非特别注明,本站所有文字均为原创文章,作者:admin

No Comment

留言

电子邮件地址不会被公开。 必填项已用*标注

感谢你的留言。。。