Cita:
Iniciado por gnzsoloyo Distinto sería la performance de:
donde si existe diferencia de performance (sólo medible ante cantidades grandes de registros,.
gnzsoloyo, esto no es realmente así, considera los escenarios:
1. Diferente sintaxis, mismo plan de ejecución. Para un conjunto de filas que se pueda obtener de diferentes formas, por ejemplo, el join que planteas con
..FROM usuarios INNER JOIN rutinas y
..FROM usuarios, rutinas WHERE id = userid, el optimizador genera el mismo plan de ejecución, lo que significa mismo rendimiento.
2. Misma sintaxis, diferente plan de ejecución. El optimizador puede resolver la misma consulta con diferentes planes de ejecución, esto sucede por varios factores como el incremento o decremento de filas totales, los índices disponibles, los entornos de hardware, etc., es decir, una consulta puede tener buen rendimiento hoy y mal rendimiento mañana, o buen rendimiento en entorno de test y mal rendimiento en producción.
En conclusión, la comparación del rendimiento entre consultas solo se puede hacer comparando los planes de ejecución, no se relaciona con la sintaxis.
Saludos