我有大约2K行的日历表。这是一个查找表,并且将在许多连接中可使用。

的列有

CalendarId (PK, Clustered)
DateTimeValue
IsWeekDay
IsWeekend
IsHoliday

我的问题是这样的:我想有DateTimeValue指数

当我应该创建该索引?

在换句话说,大如何做一个表格必须是你把一个指数前?

有帮助吗?

解决方案

您可以在创建表添加索引,插入在第一行之前。索引是数据模型设计,当数据开始显示的问题而不是一些可有可无的组成部分。

在一个空的表A中缺失索引仍然是一个丢失的索引。

其他提示

您要确保你有你需要,你不希望“等待”,直到它成为一个问题....你所浪费的时间点上的事情的索引。

但在同一时间,不只是创造一个着想创建一个索引,确保它是有道理的应用程序。

例如,根据您的操作,我想你可能是“更高效”对DateTimeValue集群,我猜你每天1项。

始终添加开始索引。表是从来没有过的有一个索引。当你有一个非常大的表,插入/更新/删除可以慢下来了。

这是指数只成为一个问题

我猜“DateTimeValue”将是此表中的自然键? 它应具有从开始的唯一索引。

关于其他字段,这是不可能的上IsWeekDay或IsWeekend索引将被优化器使用的,因为它们具有低的选择性(IsWeekDay返回行的71%)。

修改 另外请注意,这基本上是一个只读表。您可以添加任何索引你喜欢,因为它仅会影响写入性能每隔几年,当你添加一个年的数据吧。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top