Deze aggregaten zijn niet toegestaan omdat ze niet alleen op basis van de gewijzigde waarden kunnen worden herberekend.
Sommige aggregaten, zoals COUNT_BIG()
of SUM()
, kan opnieuw worden berekend door alleen naar de gegevens te kijken die zijn gewijzigd. Deze zijn toegestaan binnen een geïndexeerde weergave omdat, als een onderliggende waarde verandert, de impact van die verandering direct kan worden berekend.
Andere aggregaten, zoals MIN()
en MAX()
, kan niet opnieuw worden berekend door alleen naar de gegevens te kijken die worden gewijzigd. Als u de waarde verwijdert die momenteel de max of min is, moet de nieuwe max of min worden gezocht en gevonden in de gehele tafel.
Hetzelfde principe is van toepassing op andere aggregaten, zoals AVG()
of de standaardvariatie-aggregaten. SQL kan ze niet alleen herberekenen op basis van de gewijzigde waarden, maar moet de hele tabel opnieuw scannen om de nieuwe waarde te krijgen.