Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di
AzureIstanza gestita di SQL di
AzureEndpoint di analisi SQL in Microsoft Fabric
Warehouse in Microsoft Fabric
Database SQL in Microsoft Fabric
Questa funzione restituisce il valore di checksum dei valori di un gruppo.
CHECKSUM_AGG ignora i valori Null. La clausola OVER può seguire CHECKSUM_AGG.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
CHECKSUM_AGG ( [ ALL | DISTINCT ] expression )
Argomenti
ALL
Applica la funzione di aggregazione a tutti i valori. L'argomento predefinito è ALL.
DISTINCT
Specifica che CHECKSUM_AGG restituisce il valore di checksum di valori univoci.
expression
Espressione integer.
CHECKSUM_AGG non consente l'uso di funzioni o sottoquery di aggregazione.
Tipi restituiti
Restituisce il valore di checksum di tutti i valori di expression come valore int.
Osservazioni:
CHECKSUM_AGG consente di rilevare le modifiche in una tabella.
Il risultato CHECKSUM_AGG non dipende dall'ordine delle righe nella tabella. Le funzioni CHECKSUM_AGG consentono anche l'uso della parola chiave DISTINCT e della clausola GROUP BY.
Se un valore di elenco di espressioni cambia, è probabile che cambi anche l'elenco di valori di checksum dell'elenco. Esiste tuttavia una minima possibilità che il valore di checksum calcolato non verrà modificato.
CHECKSUM_AGG offre una funzionalità simile a quella di altre funzioni di aggregazione. Per altre informazioni, vedere Funzioni di aggregazione (Transact-SQL).
Esempi
Questi esempi servono CHECKSUM_AGG a rilevare cambiamenti nella Quantity colonna della ProductInventory tabella nel database AdventureWorks2025.
--Get the checksum value before the column value is changed.
SELECT CHECKSUM_AGG(CAST(Quantity AS INT))
FROM Production.ProductInventory;
GO
Il set di risultati è il seguente.
------------------------
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;
Il set di risultati è il seguente.
------------------------
287