Hola estimados, me dirijo a ustedes con una gran interrogante, resulta que en mi lugar de trabajo, existe una base de datos que no esta relacionada entre si, pero que si respeta esa lógica a nivel de programación PHP. Este problema me ha generado varios problemas al momento de construir consultas para mostrar algunos datos en especifico, pero el problema que actualmente tengo me supero. Les dejo info para que me puedan ayudar o darme un poco de guia.
Tengo 6 tablas a las cuales iré a consultar
Afiliado
RecepcionReembolso
SucursalSermecoop
UsuarioSistema
Empresa
Estado
siendo la tabla {RecepcionReembolso} la que consume a las otras 5, esta tabla tiene un problema "al menos para mi", tiene dos campos[RecReeIdEjecutivoLiq] y [RecReeIdUsuario] que le hacen referencia a uno solo de la tabla {UsuarioSistema}[UsuSisId], aquí nace mi problema, porque al realizar el JOIN en el campo [RecReeIdEjecutivoLiq] de la tabla {RecepcionReembolso} esta me devuelve un tipo de data, pero al cruzar el campo [RecReeIdUsuario] de la tabla {RecepcionReembolso} con el campo [UsuSisId] de la tabla {UsuarioSistema} esta me entrega otro tipo de data, lo cual hace que la información que muestro no es fidedigna y no se como solucionarlo. Adjunto las consultas que estoy utilizando:
Código MySQL:
Ver original r.RecReeIdUsuario,
CONCAT(a.AfiNombres
, ' ', a.AfiApPaterno
) Nombre
, r.RecReeIdEstadoRecepcionReembolso,
r.RecReeNumeroReembolso,
r.RecReeCopago,
r.RecReeNumDoctos,
r.RecReeIdTipoPrestacion,
r.RecReeFecha,
r.RecReeIdEjecutivoLiq,
REPLACE(s.SucSerNombre
, 'ó', 'o') AS SucSerNombre
, s.SucSerId,
IF(r.RecReeIdEjecutivoLiq
= 0,'SIN ASIGNAR',CONCAT(u.UsuSisNombre
,' ',u.UsuSisApPaterno
)) nombre_user
INNER JOIN RecepcionReembolso r
ON r.RecReeIdAfiliado
= a.AfiId
INNER JOIN UsuarioSistema u
ON r.RecReeIdUsuario
= u.UsuSisId
INNER JOIN SucursalSermecoop s
ON s.SucSerId
= u.UsuSisIdSucursalSermecoop
Como pueden ver no es una consulta de complejidad alta, pero me ha tenido bien aproblemado este tema, porque dependiendo del campo que utilice en el join
[ INNER JOIN UsuarioSistema u ON r.RecReeIdUsuario = u.UsuSisId]. Este me cambia la información de las sucursales y de los usuarios. Espero me puedan dar una manito o guiar para solucionar este problema. Muchas gracias