gpt4 book ai didi

sql - 复合数据库索引

转载 作者:搜寻专家 更新时间:2023-10-30 21:48:13 25 4
gpt4 key购买 nike

我正在寻找对我对数据库中复合索引的理解的确认 - 特别是与 SQL Server 2008 R2 相关的内容,如果这有所不同的话。

我想我明白索引列的顺序是至关重要的,因为如果我有一个 { [Name], [Date] } 的索引,那么一个基于 WHERE 的 SELECT基于 [Date] 的子句将无法使用索引,但 { [Date], [Name] } 的索引可以。如果 SELECT 基于两列,则任一索引都可用。

是吗?使用这样的复合索引有什么好处,每列有两个索引(即 { [Date] }{ [Name] })。

谢谢!

最佳答案

不完全是,日期上的选择仍然可以使用索引,但不如包含名称作为名称的查询那样有效,这会限制必须搜索多少索引。

如果您经常查询姓名 + 日期以及日期和姓名分开的查询,请使用 3 个索引,每个索引一个。

此外,在索引中将变化最大的字段放在首位也会更快地限制索引搜索范围,从而使其更快。

您还可以包含列、未编入索引但通常根据索引获取的数据。

关于sql - 复合数据库索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4668690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com