CHECKSUM_AGG (Transact-SQL)
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Endpoint di analisi SQL in Microsoft Fabric Warehouse 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 usano CHECKSUM_AGG
per rilevare le modifiche nella Quantity
colonna della ProductInventory
tabella nel database AdventureWorks2022.
--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