Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:SQL Server
Azure SQL Database
Spravovaná instance
Azure SQLKoncový bod analýzy SQL v Microsoft Fabric
Sklad v Microsoft Fabric
Databáze SQL v Microsoft Fabric
Tato funkce vrací kontrolní součet hodnot ve skupině.
CHECKSUM_AGG ignoruje nulové hodnoty.
Klauzule OVER může následovat CHECKSUM_AGG.
Syntaxe
CHECKSUM_AGG ( [ ALL | DISTINCT ] expression )
Arguments
ALL
Použije agregační funkci na všechny hodnoty. ALL je výchozí argument.
ODLIŠNÝ
Specifikuje, že CHECKSUM_AGG vrací kontrolní součet unikátních hodnot.
expression
Celočíselný výraz.
CHECKSUM_AGG neumožňuje použití agregovaných funkcí nebo poddotazů.
Návratové typy
Vrátí kontrolní součet všech hodnot výrazů jako int.
Poznámky
CHECKSUM_AGG dokáže detekovat změny v tabulce.
Výsledek CHECKSUM_AGG nezávisí na pořadí řádků v tabulce. Funkce také CHECKSUM_AGG umožňují použití DISTINCT klíčového slova a klauzule GROUP BY .
Pokud se změní hodnota seznamu výrazů, pravděpodobně se změní i seznam kontrolních hodnot seznamu. Existuje však malá možnost, že vypočítaný kontrolní součet se nezmění.
CHECKSUM_AGG má funkce podobné ostatním agregovaným funkcím. Pro více informací viz Agregované funkce (Transact-SQL).
Examples
Tyto příklady slouží CHECKSUM_AGG k detekci změn ve sloupci Quantity tabulky ProductInventory v databázi AdventureWorks2025.
--Get the checksum value before the column value is changed.
SELECT CHECKSUM_AGG(CAST(Quantity AS INT))
FROM Production.ProductInventory;
GO
Tady je soubor výsledků.
------------------------
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;
Tady je soubor výsledků.
------------------------
287
Viz také
KONTROLNÍ SOUČET (Transact-SQL)