Tengo 4 uniones externas completas en mi consulta y es realmente lenta, ¿el orden de FULL OUTER JOIN
hace una diferencia en el rendimiento/resultado?Servidor SQL: ¿importa el orden de las uniones externas completas?
combinación externa completa = ⋈
Entonces,
Tengo una situación: Un ⋈ B ⋈ C ⋈ D
Todas las combinaciones se producen en una clave común a todos k
contenida en todas A, B, C, D
Entonces:
- ¿Cambiar el orden de las ⋈ uniones hará una diferencia en el rendimiento?
- ¿Cambiar el orden de ⋈ cambia el resultado?
Creo que no debería afectar el resultado, pero ¿afectará el rendimiento o no, no estoy seguro?
Actualización:
Will SQL Server volverá a asignar automáticamente los puntos de unión para un mejor rendimiento suponiendo que el conjunto de resultados será independiente de la orden?
El resultado debe ser el mismo. Es bastante fácil verificar el rendimiento. Compare el tiempo que toma cuando ordena las tablas de pocas a muchas visitas en el orden inverso. –
¿Por qué no intentarlo? Mira los planes de ejecución y los rastreos de SQL Profiler para los diferentes combos. – EBarr
Cuando dices diferente orden quieres decir: '(un FULL JOIN b) FULL JOIN c' vs' un FULL JOIN (b FULL JOIN c) 'por ejemplo? –