Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

optimización de consulta: join o subconsulta?

Estas en el tema de optimización de consulta: join o subconsulta? en el foro de SQL Server en Foros del Web. Buenas tardes amigos Mi duda es, con cuál de las siguientes consultas obtendré una consulta mas óptima? (en cuanto a tiempos, recursos, etc). no te ...
  #1 (permalink)  
Antiguo 24/09/2013, 11:21
Avatar de zeudio  
Fecha de Ingreso: enero-2002
Mensajes: 314
Antigüedad: 22 años, 2 meses
Puntos: 4
optimización de consulta: join o subconsulta?

Buenas tardes amigos

Mi duda es, con cuál de las siguientes consultas obtendré una consulta mas óptima? (en cuanto a tiempos, recursos, etc). no te que una usa un join y otra una subconsulta. Ambas consultas me devuelven el mismo resultado:

consulta 1:
Código SQL:
Ver original
  1. SELECT T1.Nombre, T1.Direccion
  2. FROM TABLA1 T1
  3.     INNER JOIN TABLA2 T2 ON T1.Per_ID = T2.Per_ID
  4. /*----------------------- */
  5.     LEFT JOIN TABLA3 T3 ON T1.Per_ID = T3.Per_ID
  6.         AND T3.Campo1 = 10 AND T3.Campo2 = 5
  7. /*----------------------- */
  8. WHERE T1.Estatus = 1
  9.     AND T3.Per_ID IS NULL
Consulta 2:
Código SQL:
Ver original
  1. SELECT T1.Nombre, T1.Direccion
  2. FROM TABLA1 T1
  3.     INNER JOIN TABLA2 T2 ON T1.Per_ID = T2.Per_ID
  4. WHERE T1.Estatus = 1
  5. /*----------------------- */
  6.     AND NOT EXISTS(SELECT T3.Per_ID FROM TABLA3 T3 WHERE T3.Per_ID = T1.Per_ID AND T3.Campo1 = 10 AND T3.Campo2 = 5)
  7. /*----------------------- */

Gracias por su tiempo

Última edición por gnzsoloyo; 24/09/2013 a las 12:12
  #2 (permalink)  
Antiguo 24/09/2013, 11:23
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 7 meses
Puntos: 774
Respuesta: optimización de consulta: join o subconsulta?

facil y sencillo porque no ejecutas tus consultas con ctrl + L y nos muestras cual es el plan de cada una? porque a ojo de buen cubero yo diria que la consulta 1 da un mejor performance, pero si esto lo comprobamos con el plan de ejecucion mas que mejor :P
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 24/09/2013, 20:05
 
Fecha de Ingreso: julio-2012
Ubicación: Israel
Mensajes: 360
Antigüedad: 11 años, 9 meses
Puntos: 40
Respuesta: optimización de consulta: join o subconsulta?

A contrario de Libras yo diria que el segundo me parece mejor,
y por lo tanto concuerdo con el que tenemos que ver los planes..
__________________
El Castellano no es mi lengua materna: discúlpenme por los errores gramaticales.
Mi blog

Etiquetas: join, optimización, select, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:03.