Sintomas
Quando você consulta um modo de exibição no Microsoft SQL Server 2014 ou 2016, pode demorar muito mais tempo para ser concluído se você compará-lo com a execução no SQL Server 2008 R2.
Quando você executa uma consulta que usa UNION ALL e uma meta de linha (como a cláusula TOP N, o maior predicado N ou existe), você pode observar que a consulta é executada mais lentamente no SQL Server 2014 ou versões posteriores se você a comparar com o SQL Server 2008 R2.
Causa
No SQL Server 2008 R2, o otimizador de consulta altera a ordem de diferentes partes em UNION ALL se uma meta de linha estiver presente, para que a parte mais barata apareça primeiro. Isso permite que a consulta conclua a execução anteriormente se as partes mais baratas produzirem o número necessário de linhas, sem continuar a executar partes mais caras. Tal reordenação não ocorre em versões posteriores do SQL Server.
Resolução
Esse problema foi corrigido na seguinte atualização cumulativa do SQL Server:
Atualização cumulativa 7 para SQL Server 2016 RTM
Atualização cumulativa 4 para SQL Server 2016 SP1
Atualização cumulativa 6 para SQL Server 2014 SP2
Observação O Optimiser de consulta deve ser habilitado para esse problema.
Para obter mais informações sobre o otimizador de consultas e os sinalizadores de rastreamento, consulte os links a seguir:
Hotfix do otimizador de consultas do SQL Server TF 4199 modelo de serviço
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 do SQL Server:
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".
Referências
Saiba mais sobre a terminologiaque a Microsoft usa para descrever atualizações de software.