Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/07/2014, 06:11
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: Problema con relaciones de tablas

En principio, ese que pones no es un LEFT JOIN. Para serlo, en MySQl debes obligatoriamente hacerlo explícito.
En cuanto a usar JOIN implícitos... en MySQL no es una buena idea. Es preferible que uses explícito siempre.
Algo como:
Código SQL:
Ver original
  1. SELECT DISTINCT
  2.                 per.nombre NAME,
  3.                 per.apellido apelli,
  4.                 per.telefono_p telp,
  5.                 per.telefono_s tels,
  6.                 per.idpersona
  7.            FROM personas per
  8.                 INNER JOIN profesional_servicio ps ON per.idpersona = ps.idprofesionalper
  9.                 INNER JOIN profesional_municipio pm ON per.idpersona = pm.idprofesionalper
  10.                 INNER JOIN usuarios us ON us.idpersona = per.idpersona
  11.                 INNER JOIN profesionales pr ON pr.idprofesionalper = pm.idprofesionalper
  12.           WHERE
  13.             AND ps.idservicio = $subact
  14.             AND us.idpermiso = 3
  15.             AND pm.idmunicipio = $idmuni
  16.             AND pr.saldo < 10
  17.             AND pr.invitaciones < 3
  18.             AND pr.fechultimotra = '00-00-0000'

Estoy suponiendo la relación con la tabla "profesionales", porque en realidad no la pusiste. Repetiste una que ya habías puesto, y probablemente por eso te fallara, ya que generaría un producto cartesiano-

En cuanto a esto:
Código SQL:
Ver original
  1. AND pr.fechultimotra = '00-00-0000'

quiero imaginar que no estás usando un campo VARCHAR para guardar una fecha. Eso sería una gran metida de pata... Para eso están los DATE y DATETIME.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)