Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 复合属性索引_Mysql_Sql_Indexing_Composite Index - Fatal编程技术网

Mysql 复合属性索引

Mysql 复合属性索引,mysql,sql,indexing,composite-index,Mysql,Sql,Indexing,Composite Index,当我们在属性上创建索引时,将为此属性创建一棵树。 但是当我们用复合属性创建索引时会发生什么呢?创建了两棵树?两者都是同一棵树的一部分?什么?它以与您提到的相同的顺序包含属性。出于同样的原因,如果在a、b、c列上有一个顺序相同的复合索引,则只有在搜索左边的列时,该索引才有用 WHERE a=4 ## uses index WHERE a=4 and b=10 ## uses index WHERE b=10 ## doesnot use index 我记得我读过一些关于从复合列中获得一个包含串联

当我们在属性上创建索引时,将为此属性创建一棵树。

但是当我们用复合属性创建索引时会发生什么呢?创建了两棵树?两者都是同一棵树的一部分?什么?

它以与您提到的相同的顺序包含属性。出于同样的原因,如果在a、b、c列上有一个顺序相同的复合索引,则只有在搜索左边的列时,该索引才有用

WHERE a=4 ## uses index
WHERE a=4 and b=10 ## uses index
WHERE b=10 ## doesnot use index

我记得我读过一些关于从复合列中获得一个包含串联值的索引的内容。这就是为什么当你想通过一个复合索引进行搜索时,你不能恢复列的顺序。你是说具体化实际值吗?是的,我想。b-树的工作原理是这样的,我想哦,但是我不知道这些值是否连接在一起,或者之前是否应用了某种散列。请参阅Oracle常见问题解答中对b-树的描述:它可能会帮助您关联到mysql