Sintomas
Suponha que executa uma consulta que contém o operador UNION ao utilizar um plano de consulta paralelo no Microsoft SQL Server 2008 R2, SQL Server 2012 ou SQL Server 2014. O operador de agregação de fluxo pode produzir linhas duplicadas quando as seguintes condições forem verdadeiras:
- A consulta utiliza uma constante ou uma coluna com valor fixo (por exemplo, implícito a partir de um predicado como coluna = <constante> quando a coluna é selecionada).
- SQL Server utiliza um plano de execução de consulta paralela que inclui um operador de agregação de fluxo que agrega em valor constante ou fixo (este operador de agregação de fluxo pode ser introduzido em consultas que contenham o operador UNION para produzir resultados distintos).
Resolução
SQL Server 2012
Para SQL Server 2012, para resolver este problema, aplique SQL Server 2012 Service Pack 2. Para obter mais informações sobre erros corrigidos no SQL Server 2012 SP2, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2958429 Erros corrigidos no SQL Server 2012 Service Pack 2
O problema foi corrigido na atualização cumulativa seguinte do SQL Server.
Atualização Cumulativa 13 para SQL Server 2008 R2 SP2 /en-us/help/2967540
Atualização Cumulativa 2 para SQL Server 2014 /pt-pt/help/2967546
Atualização Cumulativa 10 para SQL Server 2012 SP1 /en-us/help/2954099
Acerca das atualizações cumulativas para SQL Server
Cada nova atualização cumulativa para SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas com a atualização cumulativa anterior. Consulte as atualizações cumulativas mais recentes para SQL Server:
- Atualização cumulativa mais recente para o SQL Server 2008 R2 SP2
- Atualização cumulativa mais recente para o SQL Server 2014
- Atualização cumulativa mais recente para o SQL Server 2012 SP1
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".