REVISIÓN: Los resultados no coherentes al ejecutar una consulta compleja que utiliza el operador APPLY en SQL Server 2008 R2

Seleccione idioma Seleccione idioma
Id. de artículo: 2428310 - Ver los productos a los que se aplica este artículo
Microsoft distribuye las revisiones de Microsoft SQL Server 2008 R2 como un archivo descargable. Debido a que las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2.
Expandir todo | Contraer todo

En esta página

Síntomas

En Microsoft SQL Server 2008 R2, puede recibir resultados incoherentes al ejecutar una consulta compleja que utiliza elAPLICARoperador.

NotaRecibe el resultado correcto en esta situación, si utiliza elFORZAR ORDENSugerencia de consulta en una consulta.

Causa

Este problema se produce porque el optimizador de consultas selecciona un plan de ejecución incorrecto para la consulta.

Los puntos de control del optimizador de consultas laAGRUPAR PORpredicado para las columnas múltiples en un operador físico, el plan de ejecución. Sin embargo, el operador envía todas las columnas agrupadas en la lista de resultados y no agrupa todas estas columnas. Por lo tanto, la consulta puede devolver un resultado incorrecto.

NotaUn ejemplo de un operador físico es elAgregado de secuenciaoperador.

Por ejemplo, en que el optimizador de consultas genera unaColA GROUP BY, ColBcláusula internamente con respecto a la tabla siguiente:
Contraer esta tablaAmpliar esta tabla
ColAColB
00
01
El optimizador de consultas incorrectamente puede generar un plan de ejecución devuelve ambos elColAyColBcolumnas. Estas columnas se agrupan por elColAcolumna de la lista de resultados. En este ejemplo, la consulta puede devolver al azar0o1en elColBcolumna si los valores de laColAson de la columna0.

Solución

Información de la actualización acumulativa

SQL Server 2008 R2

La solución a este problema en primer lugar se publicó en el 5 de actualización acumulativa. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2438347Paquete acumulativo de actualización de 5 para SQL Server 2008 R2
NotaDebido a que las compilaciones son acumulativas, cada nueva versión de la revisión contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Se recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
981356Generación de SQL Server 2008 R2 que se publicaron después del lanzamiento de SQL Server 2008 R2

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:".

Más información

Para comprobar que está experimentando este problema, revise el plan de ejecución de las consultas problemáticas y, a continuación, compruebe los operadores de grupo. Por ejemplo, compruebe que el operador agregado de secuencia, el operador agregado hash, el operador de orden distinto y el operador de segmento. Si la lista de las columnas de resultados es mayor que la lista de las columnas agrupadas, está experimentando este problema.

Referencias

Para obtener más información sobre el modelo de servicio incremental de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
935897Un modelo incremental de servicio está disponible en el equipo de SQL Server para entregar revisiones para problemas detectados
Para obtener más información acerca del esquema de nomenclatura para las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
822499Nuevo esquema de nomenclatura para los paquetes de actualización de software de Microsoft SQL Server
Para obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 2428310 - Última revisión: viernes, 31 de diciembre de 2010 - Versión: 2.0
La información de este artículo se refiere a:
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
Palabras clave: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2428310 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 2428310

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com