Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Banco de Dados SQL do
AzureInstância
Gerenciada de SQL do AzurePonto de extremidade de análise de SQL no Microsoft Fabric
Warehouse no Microsoft Fabric
Banco de dados SQL no Microsoft Fabric
Essa função retorna a soma de verificação dos valores em um grupo.
CHECKSUM_AGG ignora valores nulos. A cláusula OVER pode seguir CHECKSUM_AGG.
Convenções de sintaxe de Transact-SQL
Sintaxe
CHECKSUM_AGG ( [ ALL | DISTINCT ] expression )
Argumentos
ALL
Aplica a função de agregação a todos os valores. ALL é o argumento padrão.
DISTINTO
Especifica que CHECKSUM_AGG retorna a soma de verificação de valores exclusivos.
expressão
Uma expression de inteiro.
CHECKSUM_AGG não permite o uso de funções de agregação nem de subconsultas.
Tipos de retorno
Retorna a soma de verificação de todos os valores de expression como int.
Comentários
CHECKSUM_AGG pode detectar alterações em uma tabela.
O resultado de CHECKSUM_AGG não depende da ordem das linhas na tabela. Além disso, as funções de CHECKSUM_AGG permitem o uso da palavra-chave DISTINCT e da cláusula GROUP BY.
Se o valor de lista de uma expressão for alterado, a lista de valores da soma de verificação de lista provavelmente também será alterada. No entanto, há uma pequena possibilidade de que a soma de verificação calculada não seja alterada.
O CHECKSUM_AGG tem uma funcionalidade semelhante à de outras funções de agregação. Para obter mais informações, confira Funções de agregação (Transact-SQL).
Exemplos
Esses exemplos são usados CHECKSUM_AGG para detectar mudanças na Quantity coluna da ProductInventory tabela no banco de dados AdventureWorks2025.
--Get the checksum value before the column value is changed.
SELECT CHECKSUM_AGG(CAST(Quantity AS INT))
FROM Production.ProductInventory;
GO
Veja a seguir o conjunto de resultados.
------------------------
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;
Veja a seguir o conjunto de resultados.
------------------------
287