SQL Server使用带有中间节点和叶节点的二叉树进行搜索,但它将如何执行此操作。例如。如果表employee有两个字段
Id bigint
Name varchar(50)
具有如下值:
Id Name
1 Ashish
2 Amit
3 Bhavin
4 Dinesh
如果我们在这两列上都创建了复合非聚集索引,其中name是first,Id是Id,那么它是如何工作的。中间节点是否包含1) A-F 2)G-M ...或者别的什么。同样,一旦在二进制中搜索了name,那么在这棵树有id之后,就有了中间节点。
简而言之,SQL server是如何在这种情况下进行搜索的?
发布于 2012-01-17 17:42:39
如何工作
数据库获取CREATE INDEX命令中指定的列,并将这些值排序到称为B树的特殊数据结构中。B树结构以最少的磁盘读取支持快速搜索,允许数据库引擎快速找到我们正在使用的查询的起始点和结束点。
有关更多信息,请查看
发布于 2019-08-22 21:45:14
这个问题是一个概念性的问题,需要一个非常直截了当的答案,你可以阅读这篇文章来获得简短的答案:
https://stackoverflow.com/questions/8892237
复制相似问题