Sintomas
Suponha que você use a instrução MERGE para descobrir quantas linhas não são correspondidas por origem e armazene-a em uma variável local da seguinte maneira:
DECLARE
@NotMatchedBySource INT = 0;
MERGE TargetTable USING SourceTable ON TargetTable.id = SourceTable.id
QUANDO NÃO CORRESPONDIDA POR ORIGEM, THEN
CONJUNTO DE @NotMatchedBySource = @NotMatchedBySource ATUALIZAÇÃO + 1;
IMPRIMIR @NotMatchedBySource;
VAI
Nessa situação, você pode observar que o valor de @NotMatchedBySource após a instrução MERGE pode não refletir o número real de linhas que não são correspondidas pela origem.
Status
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".
Resolução
Esse problema é corrigido nas seguintes atualizações cumulativas para o SQL Server
Sobre atualizações cumulativas para o SQL Server:
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes para o SQL Server:
- Atualização cumulativa mais recente do SQL Server 2017
- Atualização cumulativa mais recente do SQL Server 2016
- Atualização cumulativa mais recente do SQL Server 2014
Referências
Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.