首先让我们看看什么是综合指数-
复合索引是用于多个列的索引。
也称为多列索引。
MySQL允许用户创建一个最多由16列组成的复合索引。
查询优化器使用组合索引进行查询,这将测试索引中的所有列。
它还可以用于将测试前几列,前两列等等的查询。
如果在索引定义中以正确的顺序指定了列,则可以使用单个复合索引,这将加快对同一表的某些类型的查询的速度。
让我们看看在创建表的过程中如何创建复合索引。可以使用以下语句完成-
CREATE TABLE table_name ( c1 data_type PRIMARY KEY, c2 data_type, c3 data_type, c4 data_type, INDEX index_name (c2,c3,c4) );
在上面的语句中,复合索引由三列c2,c3和c4组成。
也可以使用“ CREATE INDEX”语句将组合索引添加到现有表中。让我们看看如何做到这一点-
CREATE INDEX index_name ON table_name(c2,c3,c4);
让我们看看如何使用Composite Index快速进行sloq查询-
查询执行的速度取决于其持续时间。
使用索引提示将加快查询速度。
在选择索引时,可以使用MySQL优化器做出正确的决定。
但这仅应在静态查询上完成。
如果在“ WHERE”子句更改的地方添加查询,则查询的性能将变差,因为它不会让优化器完成其工作。
“ FORCE INDEX”语句的作用类似于“ USE INDEX(index_list)”,此外,表扫描被认为是一项昂贵的任务。
仅当无法使用命名索引查找表中的行时才需要进行表扫描。