Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/09/2015, 13:54
santiagokian
 
Fecha de Ingreso: enero-2013
Mensajes: 5
Antigüedad: 11 años, 4 meses
Puntos: 0
Consulta JOIN condicional

Estimados,

Muy buenas tardes. Apelo a vostros por lo siguiente : tengo una consulta que deberia ser condicional, ya que implica 4 tablas (Clientes, personasFisicas, personasJuridicas, contactos).
El problema es que cuando un Cliente es una persona fisica, la tabla contactos tendra asociado el idCliente y el idPersona, para relacionar ambas (personas y clientes).
En cambio , si fuese un cliente de tipo "personaJuridica", la relacion es unicamente entre personasJuridicas.idCliente = Clientes.idCliente.

Estoy buscando ejemplos de algun condicional , pero no encuentro lo que necesito.
Agradezo de antemano!

Código MySQL:
Ver original
  1.   Clientes.idCliente,
  2.   Clientes.nombreComercial,
  3.   Clientes.tipoPersona,
  4.   personasFisicas.nombre,
  5.   personasFisicas.Apellido ,
  6. personasJuridicas.razonSocial
  7.   FROM Clientes
  8.   IF (Clientes.tipoPersona = 'fisica')
  9. INNER JOIN personasFisicas ON  personasFisicas.idPersona = Contactos.idPersona
  10. INNER JOIN contactos ON Contactos.idCliente = Clientes.idCliente
  11.   ELSE
  12.     INNER JOIN personasFisicas ON  personasFisicas.idCliente = Clientes.idCliente)
  13.    END IF
  14.   WHERE Clientes.idCliente = 3;
[/CODE]

Última edición por gnzsoloyo; 03/09/2015 a las 14:11