Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

SQL:Erro, limite de serviços de expressão atingido?


Esse problema ocorre porque o SQL Server limita o número de identificadores e constantes que podem estar contidos em uma única expressão de uma consulta. O limite é 65.535. O teste para o número de identificadores e constantes é executado após o SQL Server expandir todos os identificadores e constantes referenciados. No SQL Server 2005 e superior, as consultas são normalizadas e simplificadas internamente. E isso inclui *(asterisco), colunas computadas etc.

Para contornar esse problema, reescreva sua consulta. Referencie menos identificadores e constantes na maior expressão da consulta. Você deve certificar-se de que o número de identificadores e constantes em cada expressão da consulta não exceda o limite. Para fazer isso, talvez seja necessário dividir uma consulta em mais de uma única consulta. Em seguida, crie um resultado intermediário temporário.