MySQL索引的分类及其使用分析
内存存储引擎可以选择散列或B树索引,和Hash索引只能用于等式=或比较。
1、常用指标:创建索引表(表列)
tablename表添加索引(列的列表)
创建表的语句({…},{ }(indexname索引的列的列表)
2、独特索引:创建唯一索引
改变…添加独特的
主键:必须指定为主键的惟一索引
三.全文索引:从全文索引和全文检索的3.23.23版,全文,
可以在列的类型为char、varchar创建,或文本。
4、单栏索引、多栏索引:
多单指数和单多列指数的影响因:
执行查询时,MySQL只能使用一个索引,选择多个指标最限制产量者指标之一。
5、最左前缀(Leftmost Prefixing):多个列的索引,如:fname_lname_age指数,下面的搜索条件,MySQL将使用
fname_lname_age指数:名字,姓氏,名字,年龄;姓;名,和其他案件将不被使用。
两。确定根据SQL查询语句创建的索引类型以及如何优化查询
选择索引列:
在性能优化过程中,选择一个列来创建一个索引是最重要的步骤之一。
两种类型的列:出现在WHERE子句和连接子句中的列中的列。
考虑列中位数的分布,索引列的基数越大,索引的效果越好。
C.使用一个短索引,如果字符串被索引,则应该指定前缀长度,这样可以节省大量索引空间并提高查询速度。
d.使用最左前缀
E.不overindex只有保持要求的指标。每个额外的索引需要额外的磁盘空间,并降低写操作的性能。
当表的内容被修改时,索引必须被更新,有时可能需要重构,因此索引越多,占用的时间就越长。
运算符仅用于MySQL索引,
喜欢和一些时间(不_通配符%或在开始的情况下)。
MySQL索引的分类
在数据库表中,索引字段可以极大地提高查询速度。通过充分利用这些索引,MySQL的查询和操作可以更高效。索引是快速搜索的关键。MySQL索引的建立对MySQL的高效运行非常重要。
1、常用类型索引
这是最基本的索引类型,它没有唯一的限制:
(1)创建一个索引,如创建索引的名称、表(列1名,列2名,…);
(2)修改表,如改变表添加索引名称(栏目名称栏目名称1,2,…);
(3)在创建表时,该指定索引,如创建表的语句({…},名称的索引(列1名,列名称)
2……)
2、唯一索引
这个索引基本上与以前的普通索引相同,但是有一个区别:索引列的所有值只能出现一次,也就是说它必须是唯一的:
(1)创建一个索引,如创建索引的名称、表(表列);
(2)修改表,如对ALTER TABLE tablename ADD UNIQUE索引的名称(列的列表);
(3)在创建表时,该指定索引,如创建表的语句({…},名称的唯一索引(柱)
桌子);
三.主键
主键是一个独特的指标,但它必须指定为主键。如果你使用的auto_increment类型的列,你可能熟悉的关键概念。主键通常指定在创建表时,如创建表的语句({…},主键(列表列));然而,我们也可以通过修改表添加主键,如tablename表添加主键(列的列表);每个表只能有一个主键(主键等于总指数,指数是最快找到)
4、单栏索引和多栏索引。
索引可以是单列索引或多列索引。
(1)单列索引是列字段的常用索引,一个公共索引。
(2)多列索引是一个具有多个列字段的索引。
修改学生表添加索引系统(名称,年龄,分数);
指标体系是多栏索引,多栏索引在下列情况下是有效的。
SELECT *学生名字= 'jia'and从指数与年龄> = / / 12在第一栏和现场条件
第二场
只有从学生那里的名字= / /何'jia'field包含SELECT *第一
SELECT * FROM学生名字= 'jia'and评分<60 / /在含话第一和第三场条件
段
总结:列索引只包含索引中第一个有效的字段。
5。选择索引列
如何选择索引列,首先要查看查询条件,一般将查询条件中的列作为索引