建立特定值

时间:2017-10-12 14:13:52

标签: sql-server indexing

我有一张表,可以每天保存商店中产品的库存信息。它就像:

|------------|-----------|---------|-----------------|
|    Date    | ProductId | StoreId | InventoryOnHand |
|------------|-----------|---------|-----------------|
| 2017-10-11 |    348    |   121   |        2        |
| 2017-10-11 |    110    |   200   |        0        |
| 2017-10-11 |    254    |   587   |       -2        |
| 2017-10-12 |    311    |   875   |       26        |
| 2017-10-12 |    954    |   364   |       15        |
| 2017-10-12 |    348    |   121   |        0        |
| 2017-10-12 |    441    |   121   |        7        |
|     .      |     .     |    .    |        .        |
|     .      |     .     |    .    |        .        |
|     .      |     .     |    .    |        .        |
|------------|-----------|---------|-----------------|

在我使用的大多数查询中都有类似WHERE InventoryOnHand > 0的条件。我需要加快这些查询。 因此,我想构建和索引用于分隔列InventoryOnHand上的值,无论它们是否大于0。

Filtered Index无法解决我的问题,因为如果我使用过滤索引,则所有大于0的值都将被编入索引,这会增加索引大小。我只需要知道一个大于0的值。

即。我想构建一个仅在条件为InventoryOnHand > 0时才有效的索引。有没有办法在SQL-Server上执行此操作?

0 个答案:

没有答案