Ver Mensaje Individual
  #19 (permalink)  
Antiguo 26/07/2007, 19:46
Avatar de Gabo77
Gabo77
 
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 17 años, 6 meses
Puntos: 6
Re: ayuda con consulta

Cita:
Iniciado por Mithrandir Ver Mensaje
He escuchado que bajo ciertas circunstancias, el subquery es más eficiente que el join, por ejemplo en el caso de que las tablas no tengan índices.

Aunque no creería que ese sea tu caso. Por mera curiosidad... ¿Cual es tu caso? ¿Tablas grandes? ¿Indices? ¿hints activados?
Una tabla de Log de eventos, contiene mas de 25 millones de registros, la tabla está indexada por un campo llamado idenvio (no es llave por que al ser log registra muchos eventos para el mismo idenvio con diferencia del mensaje arrojado por el sistema y la fecha) cuando busco un idenvio especifico que se encuentra en otra tabla si lo hago vía JOINS (mediante el campo IdEnvio que en la otra tabla si es llave) me tarda entre 20 y 30 segundos , haciendolo en un EXISTS(SubConsulta) Me tarda entre 2 y 3 segundos.... :D Amo mi Exists!

Saludos!
__________________
Hicimos un pacto con Dios... El no desarrolla Sistemas y nosotros no hacemos milagros....