Sql 你能索引一个根据条目值“更改”的列吗?
所以,在我的数据库中,我有一个包含这两列的表。我有一个NoteType和一个NoteTypeID。notnotetype告诉您noteTypeId引用的是什么。这是另一个表的ID,因此我可以从注释中引用回条目。我有一个查询,我需要在这组数据上运行很多次,它目前非常慢,因为很多情况下都会做注释。noteTypeID是否可以基于noteType进行索引?Sql 你能索引一个根据条目值“更改”的列吗?,sql,sql-server,Sql,Sql Server,所以,在我的数据库中,我有一个包含这两列的表。我有一个NoteType和一个NoteTypeID。notnotetype告诉您noteTypeId引用的是什么。这是另一个表的ID,因此我可以从注释中引用回条目。我有一个查询,我需要在这组数据上运行很多次,它目前非常慢,因为很多情况下都会做注释。noteTypeID是否可以基于noteType进行索引? 我对索引的概念相当陌生,因此我不确定。如果您经常运行以下查询: 从NoteInfo中选择NoteType,其中NoteTypeID=2900,每个
我对索引的概念相当陌生,因此我不确定。如果您经常运行以下查询: 从NoteInfo中选择NoteType,其中NoteTypeID=2900,每个NoteTypeID仅与一个NoteType关联,如果数据集很大,则索引可以帮助搜索性能 如果您的数据是这样构造的,那么a可能是最好的方法。这有助于数据库在Ologn时间内为传入的NoteTypeID找到相应NoteType的记录,这比遍历整个表要好
可以使用SQLServerManagementStudio或T-SQL创建索引。我可以为您复制这些信息,但是指向文档的稳定链接(格式比我在这里复制的文档好得多)来自Microsoft。显示表结构和您所引用的查询。您正在寻找的是NoteType、NoteTypeID上的聚集索引。这将按NoteType然后按NoteTypeID对索引进行分组排序。因此,如果查询NoteType值,引擎理论上可以对note类型进行初始搜索,然后返回特定ID。在没有看到查询或数据库结构的情况下,我真正能说的就是复制表并使用索引进行测试。SQL Sentry Plan Explorer是一个免费工具,非常适合阅读执行计划。非常感谢!这正是我要找的!编辑:谢谢你的额外阅读顺便说一句,我想了解更多关于它!另外一个问题,我在这个表上已经有了聚集索引。非集群也可以接受吗?还是我必须满足于其中一个?@MasonToy表只能有一个聚集索引。聚集索引实际上是表数据本身。比如,这是表中数据的实际排序顺序,我简化了,但这就是想法。所以你只能有一个。不过,索引中可以有多个列。