Hola lista, espero no estar fuera de lugar o haber hecho un OFFTOPIC
con esta pregunta para los expertos en base de datos

Tengo dos formas distintas de hacer JOINS, una la lei de un amigo, la
cual me parece la forma mas sencilla (la segunda forma) ya que la
lectura y escritura es secuencial, entonces la vi sencilla de escribir
y fácil de leer, el detalle es que según mi teoría de relaciones y
bases de datos pensé que podía ser mas rápida el usar la teoría de
conjuntos para agrupar las relaciones (la primera forma) pero me di
cuenta que los tiempos son los mismos cuando ejecuto la consulta, y es
hasta algo mas lenta, en unos 10mms promedio luego de alrededor de 20
ejecuciones realizadas. Además de ello, la consulta es mal lenta en
lectura, mi pregunta es entonces, cual es la forma correcta de hacer
un JOIN, se que puedo buscarlo ne un libro, y ya lo hice, y encontré
ambas formas, según los gustos de los autores. Entonces me gustaría
saber que es lo que opinas los científicos de la SPC al respecto sobre
la mejor forma o la forma correcta de hacerlo.
Además de ello, si pruebo con WHERE, la consulta se ejecuto mas rápido
aun, la lógica que deduje fue simple, un subconjunto (WHERE) es mas
rápido que una multiplicación de tablas (JOIN)

Nuevamente, espero no alterar el orden de temas de discusión, pero me
gustaría conocer su opinión al respecto

**************************************************************************************
FROM
       venta.clientes c
       JOIN ((empresas e
       JOIN (((logistica.locales l
       JOIN (logistica.direcciones dl
       JOIN (logistica.distritos il
       JOIN (logistica.provincias lp
       JOIN logistica.departamentos lt ON lt.depcodigo = lp.depcodigo) ON
lp.procodigo = il.procodigo) ON il.discodigo = dl.discodigo) ON
l.dircodigo = dl.dircodigo)
       JOIN logistica.sucursal s ON s.succodigo = l.succodigo)
       JOIN logistica.tipolocales tl ON tl.tloccodigo = l.tloccodigo) ON
l.empcodigo = e.empcodigo)
       JOIN (logistica.distritos ed
       JOIN (logistica.provincias ep
       JOIN logistica.departamentos et ON et.depcodigo = ep.depcodigo) ON
ep.procodigo = ed.procodigo) ON ed.discodigo = e.discodigo) ON
e.empcodigo = c.clicodigo
**************************************************************************************
FROM venta.clientes c
  JOIN empresas e ON e.empcodigo = c.clicodigo
  JOIN logistica.distritos ed ON ed.discodigo = e.discodigo
  JOIN logistica.provincias ep ON ep.procodigo = ed.procodigo
  JOIN logistica.departamentos et ON et.depcodigo = ep.depcodigo
  JOIN logistica.locales l ON l.empcodigo = e.empcodigo
  JOIN logistica.tipolocales tl ON tl.tloccodigo = l.tloccodigo
  JOIN logistica.sucursal s ON s.succodigo = l.succodigo
  JOIN logistica.direcciones dl ON l.dircodigo = dl.dircodigo
  JOIN logistica.distritos il ON il.discodigo = dl.discodigo
  JOIN logistica.provincias lp ON lp.procodigo = il.procodigo
  JOIN logistica.departamentos lt ON lt.depcodigo = lp.depcodigo
**************************************************************************************

--
Carlos Eduardo Sotelo Pinto a.k.a. krlos
http://csotelo.blogspot.com
Office: (51) 54 - 286382 Ext 28
Home: (51) 54 - 464113
Mobil: (51) 54 - 959980794
pgp.rediris.es 0xF8554F6B
GPG FP:697E FAB8 8E83 1D60 BBFB 2264 9E3D 5761 F855 4F6B
GNULinux RU #379182 || GNULinux RM #277661



-- 
Carlos Eduardo Sotelo Pinto a.k.a. krlos
http://csotelo.blogspot.com
Office: (51) 54 - 286382 Ext 28
Home: (51) 54 - 464113
Mobil: (51) 54 - 959980794
pgp.rediris.es 0xF8554F6B
GPG FP:697E FAB8 8E83 1D60 BBFB 2264 9E3D 5761 F855 4F6B
GNULinux RU #379182 || GNULinux RM #277661
_______________________________________________
Lista de correo Linux-plug
Temática: Discusión general sobre Linux
Peruvian Linux User Group (http://www.linux.org.pe)

Participa suscribiéndote y escribiendo a:  [email protected]
Para darte de alta, de baja  o hacer ajustes a tu suscripción visita:
http://listas.linux.org.pe/mailman/listinfo/linux-plug

IMPORTANTE: Reglas y recomendaciones
http://www.linux.org.pe/listas/reglas.php
http://www.linux.org.pe/listas/comportamiento.php
http://www.linux.org.pe/listas/recomendaciones.php

Responder a