REVISIÓN: Resultados incoherentes al ejecutar una consulta compleja que utiliza el operador APPLY en SQL Server 2008 R2

Microsoft distribuye correcciones de Microsoft SQL Server 2008 R2 como un archivo descargable. Como 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.

Síntomas

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

Nota: Recibe el resultado correcto en esta situación si se utiliza la sugerencia de consulta FORCE ORDER en una consulta.

Causa

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

El optimizador de consultas trata el predicado GROUP BY para las varias columnas de un operador físico del 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.

Nota: Un ejemplo de un operador físico es el operador Stream Aggregate .

Por ejemplo, el optimizador de consultas genera una cláusula GROUP POR ColA, ColB internamente en la tabla siguiente:
ColAColB
00
01
El optimizador de consultas puede generar correctamente un plan de ejecución que devuelve las columnas de la ColA y ColB . Estas columnas se agrupan por la columna de la ColA en la lista de resultados. En este ejemplo, la consulta puede aleatoriamente devolver 0 o 1 en la columna ColB si los valores de la columna de ColA son 0.

Solución

Información de actualización acumulativa

SQL Server 2008 R2

En primer lugar, la corrección para este problema se publicó en 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:
2438347 paquete de actualización acumulativa 5 para SQL Server 2008 R2
Nota: Como las compilaciones son acumulativas, cada versión de correcció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. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:
981356 el SQL Server 2008 R2 se basa 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 que se enumeran en la sección "Aplicable a".

Más información

Para comprobar que está experimentando este problema, revise el plan de ejecución de la consulta problemática y, a continuación, compruebe los operadores de grupo. Por ejemplo, comprobar el operador stream aggregate, el operador agregado hash, el operador sort distintas y el operador del segmento. Si la lista de las columnas de resultados es más larga 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:

935897 un modelo de servicio Incremental 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:

822499 Nuevo 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:
824684 descripción de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft
Propiedades

Id. de artículo: 2428310 - Última revisión: 8 ene. 2017 - Revisión: 1

Comentarios