La tabla de SQL Server se bloquea en una consulta larga - Solución: ¿NoLock?

un informe en mi aplicación ejecuta una consulta que necesita entre 5 y 15 segundos (restringido a la cantidad de filas que se devolverán). La consulta tiene 8 uniones a casi todas las tablas principales de mi aplicación (Clientes, ventas, unidades, etc.).

Una pequeña herramienta me muestra que, en este momento, todas esas 8 tablas están bloqueadas con un bloqueo de tabla compartido. Eso significa que no se realizará ninguna operación de actualización en este momento.

Una solución de un amigo es tener todas las combinaciones en la consulta, lo que no es obligatorio tener los datos correctos al 100% (lectura sucia), con un NoLock, por lo que solo 1 de estas 8 tablas se bloqueará completamente. ¿Es esa una buena solución? Para un informe en el que el 99% de los datos provienen de una tabla, ¿desbloquea las tablas menos prio?

Respuestas a la pregunta(3)

Su respuesta a la pregunta