【发布时间】:2011-02-13 12:06:26
【问题描述】:
我有一个包含如下表的架构(伪架构):
TABLE ItemCollection {
ItemCollectionId
...etc...
}
TABLE Item {
ItemId,
ItemCollectionId,
ContributorId
}
我需要汇总每个 ItemCollectionId 的不同贡献者的数量。这可以通过如下查询来实现:
SELECT ItemCollectionId, COUNT(DISTINCT ContributorId) FROM Item
GROUP BY ItemCollectionId
我还想使用索引(物化)视图预先计算此聚合。 DISTINCT 防止在此视图上放置索引。有什么方法可以重新制定这不会违反 SQL Server 的索引视图约束?
【问题讨论】:
标签: sql sql-server tsql aggregate indexed-view