¿Hay alguna diferencia si filtra una vista dentro o fuera de la vista?
Por ejemplo, ¿hay alguna diferencia entre estas dos consultas?
SELECT Id
FROM MyTable
WHERE SomeColumn = 1
O
SELECT Id
FROM MyView
WHERE SomeColumn = 1
Y MyView
se define como
SELECT Id, SomeColumn
FROM MyTable
¿Y la respuesta es diferente si la tabla de origen se encuentra en un servidor vinculado?
Lo pregunto porque tengo que consultar una tabla grande (44mil filas) dos veces desde un servidor vinculado y obtener un agregado de los resultados. Quiero saber si debo crear dos vistas para acceder a los datos, una para cada consulta, o si puedo salir con una sola vista y una WHERE
cláusula.
UNION ALL
. Es mucho más fácil usar una Vista que tener que reescribir la consulta UNION cada vez que necesito los datos.