Создание индексированного представления с использованием AVG в SQL

Я пытаюсь создать индексированное представление с использованием агрегированного AVG, но не могу заставить его работать. Кто-нибудь пробовал это делать? Я нашел эту статью, но не смог выяснить, как заставить его работать. Вот мой сценарий:

CREATE VIEW MyView 
WITH SCHEMABINDING 
AS 
    SELECT 
        Id,  AVG(Age) as AvgAge, COUNT_BIG(*) as CountBig 
    FROM 
       dbo.Student 
    GROUP BY 
       Id;
GO

CREATE UNIQUE CLUSTERED INDEX MyIndex ON MyView(Id);

Я понимаю, что MIN и MAX невозможны, но почему не AVG?


person Dilshod    schedule 24.08.2015    source источник
comment
Этот предыдущий ответ должен объяснить это - в основном потому, что AVG (например, MIN и MAX) необходимо повторно сканировать все доступные элементы, чтобы пересчитать, если запись была добавлена, удалена или изменена.   -  person AHiggins    schedule 24.08.2015
comment
Я не уверен, почему мой вопрос помечен как повторяющийся. Другой вопрос ничего не говорит о AVG.   -  person Dilshod    schedule 24.08.2015
comment
Дублирование имеет здесь несколько широкое значение: на два вопроса есть один и тот же ответ, хотя в другом вопросе конкретно упоминаются MAX и MIN, а ваш вопрос касается AVG. Дополнительную информацию см. здесь.   -  person AHiggins    schedule 24.08.2015