CHECKSUM_AGG (Transact-SQL)
Zwraca wartość suma kontrolna wartości w grupie.Wartości zerowe są ignorowane.Może nastąpić nad klauzula.
Składnia
CHECKSUM_AGG ( [ ALL | DISTINCT ] expression )
Argumenty
ALL
Dotyczy wszystkich wartościfunkcja wartość zagregowana. Jest wartością domyślną.DISTINCT
Określa, że CHECKSUM_AGG zwraca wartość suma kontrolna wartości unikatowych.expression
Jest liczbą całkowitą wyrażenie.Funkcje agregujące i podkwerend nie są dozwolone.
Zwracane typy
Zwraca wartość suma kontrolna wszystkich expression wartości jako int.
Uwagi
CHECKSUM_AGG może służyć do wykrywać zmian w tabela.
Porządek wierszy w tabela nie wpływa na wynik CHECKSUM_AGG.Funkcje CHECKSUM_AGG może również być używane słowo kluczowe DISTINCT i Grupuj według klauzula.
Jeśli jedna z wartości na liście wyrażenie ulegnie zmianie, zmieni się także ogólnie suma kontrolna listyJest jednak niewielkie ryzyko, że suma kontrolna nie ulegnie zmianie.
CHECKSUM_AGG ma podobną funkcjonalność z innych funkcji wartość zagregowana .Aby uzyskać więcej informacji, zobacz Funkcje agregujące (Transact-SQL).
Przykłady
W poniższym przykładzie użyto CHECKSUM_AGG do wykrywać zmian w Quantity kolumna ProductInventory tabela w AdventureWorks2008R2 bazy danych.
--Get the checksum value before the column value is changed.
USE AdventureWorks2008R2;
GO
SELECT CHECKSUM_AGG(CAST(Quantity AS int))
FROM Production.ProductInventory;
GO
Oto zestaw wyników.
------------------------
262
UPDATE Production.ProductInventory
SET Quantity=125
WHERE Quantity=100;
GO
--Get the checksum of the modified column.
SELECT CHECKSUM_AGG(CAST(Quantity AS int))
FROM Production.ProductInventory;
Oto zestaw wyników.
------------------------
287