Inner Join

04/04/2006 - 16:58 por Isabel | Informe spam
Hola me gustaria saber dada la experiencia de ustedes que tan saludable es
hacer varios inner join en una consulta. Yo tengo 3 ya que necesito sacar
generales de marcas, descripcion de productos y otros datos en otras tablas
... cuan eficiente puede ser esta consulta?? y hay alguna mejor manera de
llevarla

SELECT a.*, b.nivreo, c.coscif, c.nompro, c.codbar,
c.codsup, d.nommar FROM #codigos as a
INNER JOIN dbo.Inv_Productos as b on a.codpro = b.codpro
INNER JOIN dbo.Productos as c on a.codpro = c.codpro
INNER JOIN dbo.Marcas as d on a.codmar = c.codsup
where a.cantid > b.nivreo and b.nivreo <> 0
ORDER BY a.fecdoc DESC
 

Leer las respuestas

#1 Carlos Sacristán
04/04/2006 - 17:13 | Informe spam
No es tanto el problema de los JOIN sino de otros temas, como puedan ser
los índices de esas tablas, la distribución de los datos, etc.

Está claro que una consulta irá más rápido si en vez de tres
combinaciones se hacen dos, pero normalmente eso no lo podemos evitar...


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Isabel" (donotspam)> escribió en el mensaje
news:
Hola me gustaria saber dada la experiencia de ustedes que tan saludable es
hacer varios inner join en una consulta. Yo tengo 3 ya que necesito sacar
generales de marcas, descripcion de productos y otros datos en otras


tablas
... cuan eficiente puede ser esta consulta?? y hay alguna mejor manera de
llevarla

SELECT a.*, b.nivreo, c.coscif, c.nompro, c.codbar,
c.codsup, d.nommar FROM #codigos as a
INNER JOIN dbo.Inv_Productos as b on a.codpro = b.codpro
INNER JOIN dbo.Productos as c on a.codpro = c.codpro
INNER JOIN dbo.Marcas as d on a.codmar = c.codsup
where a.cantid > b.nivreo and b.nivreo <> 0
ORDER BY a.fecdoc DESC

Preguntas similares