Ver Mensaje Individual
  #5 (permalink)  
Antiguo 28/02/2009, 11:02
the_k
 
Fecha de Ingreso: febrero-2009
Mensajes: 10
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Consulta de Referencias Cruzadas

Hola amigo, primero que todo, no te había podido responder (soy el killerack) ya que ha habido problemas con iniciar sesión con fb(facebook), y pasándo al tema puesto te explico.
Lo que aparece en el link puesto por boluart si bien te sirve, para comenzar, la manera de unir las tablas no es la mejor, ya que al hacerlo a traves de mm no me acuerdo el nombre que es porejemplo ocupar "FRM tabla1,tabla2", cuando los datos de las tablas son pequeños, sirve, pero al ser una cantidad de datos ya mayor, la consulta realizada de esa manera se va a demorar bastante tiempo, ya que lo que realiza es hacer un "saco" de todos los datos de la tabla1 junto con los de la tabla2 (y si no estoy falto de memoria es una multiplicación tabla1*tabla2, si estoy mal espero me corrijan), y de ese "saco", se trabaja obteniendo los datos pedidos.
en cambio al ocupar los join, antes de entrar en ese "saco" se realiza un filtro, con lo cual los datos contenidos por ese saco donde se realizará la búsqueda, serán mucho menor, y por ende más rápida la conulta. ej

SELECT t1.campo1, t2.campo1
FROM tabla1 t1 INNER JOIN tabla2 t2 ON t1.campox=t2.campox
WHERE XXXXX

puse el inner ya que es el más usado, además yo renombro las tablas tabla1 t1, así pongo una simplificacion del nombre de la tabla para no tener que escribirlo completo al referirme a un campo de ésta. En alguinos motores de BD el renombramiento te lo pide con un as ej Tabla1 as t1, en el caso de SQL server, que es el que más ocupo, no lo necesita.
Espero te haya servido.
Saludos