Mysql使用B +树来实现索引。让我们说我的主要索引是类型(名称,年龄,城市)。有人可以说明Mysql如何在这些键上实现B +树吗?
我的预感是,它将整个元组视为一个关键,并将其视为偏序。例如:
(John,24,New Jersey)< (John,24,New York)< (John,25,New Jersey)< (约翰,25岁,纽约)
答案 0 :(得分:4)
(John,24,New Jersey)< (John,24,New York)< (John,25,New Jersey)< (约翰,25岁,纽约)
是的,这就是为什么在键中放置列的顺序很重要。
如果您不查看从查看开头可以满足的值,那么密钥将没有任何帮助 - 例如当您对age
和/或city
进行过滤,但不对name
进行过滤时,则无法使用该密钥。另一方面,如果您仅过滤name
,则会使用密钥。