微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数据库索引是否反向工作?

如何解决数据库索引是否反向工作?

| 给定一个数据库表示例:
ID
Name
DateOfBirth
假设我想在出生日期创建一个索引,可以将索引添加
DateOfBirth ascending
上。如果现在我的代码dob升序查询,它将运行良好且快速。 但是,数据库是否足够智能,可以反向使用索引,即如果我查询“ 2”,它是否仍然可以利用该索引,还是我应该专门为降序创建另一个索引?     

解决方法

索引页面形成一个双向链接列表,如下所示,并带有指向下一页和上一页的指针。 因此,SQL Server可以向后和向前遍历索引。扫描方向显示在执行计划的属性中。 在复合索引中,
Asc
/
Desc
变得重要的地方。 如果将索引定义为“ 5”,则对于查询“ 6”仍然需要排序。 请注意,您可能拥有比您意识到的更多的复合索引,并且非唯一的非聚簇索引会将聚簇索引键值添加到其键中。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。