¿Existe una mejor práctica general sobre si se deben usar vistas anidadas o no? ¿Hay un golpe de rendimiento al usar vistas anidadas? ¿Existe una mejor práctica que diga que realmente no hay un golpe de rendimiento hasta que tienes 4 o más capas de profundidad?Vistas de anidamiento del servidor cuadrado 2008
La razón por la que estoy preguntando esto es porque estoy teniendo problemas para usarlas o no. No es inusual obtener una solicitud de informe de la cual la única forma en que puedo acceder a esa información es unir 20 o más tablas. Los campos no se devuelven de todas las tablas, pero son necesarios para seleccionar los datos correctos. En este caso, me gusta anidar las vistas y reutilizar las vistas de nivel inferior para otros informes, porque si se necesita un cambio en la lógica, solo actualizo una vista y todos los informes se actualizan. Muchas de las tablas con las que trabajo contienen millones y millones de registros.
Sin embargo, quizás esta no sea una buena práctica. ¿Te importa compartir tus pensamientos sobre esto?
¿Las vistas hacen agregaciones? ¿Estás uniéndote a la misma tabla base? Mire el plan de ejecución y vea si está obteniendo planes subóptimos. –
¿Podría proporcionar un ejemplo de una "vista anidada"? Solo estoy familiarizado con la terminología como: vista en línea (tabla derivada de AKA), vistas no materializadas y materializadas (vistas indexadas de AKA en SQL Server). –
@OMG - Lo interpreto en el sentido de Vistas que hacen referencia a otras Vistas que hacen referencia a otras Vistas ... –