Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/01/2008, 04:10
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Re: No aparece completa la busqueda...

LEFT JOIN indica al server que devuelva de resultado los campso de la segunda tabla, pero no los de la primera.
Es decir, funciona así:
Cita:
Si no hay ningún registro coincidiente para la tabla de la derecha en la parte ON o USING en un
LEFT JOIN, se usa un registro con todos las columnas a NULL para la tabla de la derecha. Puede
usar este hecho para encontrar registros en una tabla que no tengan contraparte en otra tabla:
mysql> SELECT table1.* FROM table1
-> LEFT JOIN table2 ON table1.id=table2.id
-> WHERE table2.id IS NULL;
Este ejemplo encuentra todos los registros en table1 con un valor id no presente en table2
(esto es, todos los registros en table1 sin registro correspondiente en table2). Esto asume
que table2.id se declara NOT NULL
(Tomado del Manual de Referencia)
Si lo que deseas es que te devuelva los registros coincidentes, salvo que desees verificar nulos, es mejor usar INNER JOIN:
Cita:
SELECT e.id_especificaciones, especificacion, descripcion,
d.desarrolladores FROM especificaciones e
INNER JOIN desarrolladores d
ON e.r_progress = d.id_desarrolladores