Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/07/2011, 15:18
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
Respuesta: Duda con consulta a dos tablas

- No puedes usar la coma (o INNER JOIN) si quieres obtener incluso los que no tienen facturación.
- Hacer la comparación del ID como estabas haciendo esta mal, te dará un resultado muy ineficiente.
- Si un alias será igual al nombre del campo, no tiene sentido ponerlo.
- Usa alias para la stablas. Te resultará más fácil de escribir y cometerás menso errores.
- Trata de escribir las consultas más estructuradamente, de modo que sean más fáciles de leer a simple vista.
Código MySQL:
Ver original
  1.     C.idCliente,
  2.     C.empresa,
  3.     C.direccion,
  4.     C.cp,
  5.     C.municipio,
  6.     C.estado,
  7.     C.pais,
  8.     C.correo,
  9.     C.telfax,
  10.     C.nombre_contacto contacto,
  11.     C.observaciones obs,
  12.     F.idFacturacion,
  13.     F.razon_social razon,
  14.     F.rfc,
  15.     F.calle,
  16.     F.num_ext numext,
  17.     F.num_int  numint,
  18.     F.colonia,
  19.     F.cp cpfact,
  20.     F.municipio municipiofact,
  21.     F.estado estadofact,
  22.     F.pais paisfact
  23. FROM clientes C LEFT JOIN facturacion F ON C.idCliente = F.idCliente
  24. WHERE C.idCliente = $id OR F.idCliente IS NULL;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)