Síntomas
Suponga que usa Microsoft SQL Server 2008 R2, SQL Server 2012 o SQL Server 2014. Cuando ejecuta una consulta con TOP N y ORDER BY, la consulta toca un error de aserción similar al siguiente:
Ubicación: "qstopsrt. cpp": 384Expression: fFalseSPID: <SPID>Process id: <ProcessId>Location: Qxcntxt. cpp: 1052Expression: CREF = = 0SPID: <spid >Process ID: <ProcessId>MSG 3624, nivel 20, State 1, line 2a no se pudo realizar la comprobación de aserción del sistema. Compruebe el registro de errores de SQL Server para ver los detalles. Por lo general, el error de aserción se debe a un error de software o a daños en los datos. Para comprobar si hay daños en la base de datos, considere la posibilidad de ejecutar DBCC CHECKDB. Si aceptó el envío de volcados a Microsoft durante la instalación, se enviará un minivolcado a Microsoft. Es posible que Microsoft disponga de una actualización en el Service Pack más reciente o en un QFE de soporte técnico. Mensaje 0, nivel 20, estado 0, línea 0A se produjo un error grave en el comando actual. Los resultados, si los hay, se deben descartar.
Nota La corrección también puede aplicarse a que el plan de consulta contiene "ordenar (orden de la parte superior)".
Causa
El problema se produce debido a un error interno en el motor de ejecución de consultas.
Resolución
El problema se solucionó por primera vez en la siguiente actualización acumulativa de SQL Server.
Actualización acumulativa 1 para SQL Server 2012 SP2 /en-us/help/2976982
Actualización acumulativa 2 para SQL Server 2014 /en-us/help/2967546
Actualización acumulativa 10 para SQL Server 2012 SP1 /en-us/help/2954099
Actualización acumulativa 12 para SQL Server 2008 R2 SP2 /en-us/help/2938478
Cada actualización acumulativa para SQL Server contiene todas las revisiones y todas las revisiones de seguridad incluidas en la actualización acumulativa anterior. Consulte las últimas actualizaciones acumulativas para SQL Server:
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a".