Buenos dias gente.
Tengo las siguientes tablas:
medicamento(id, nombre)
persona(id, nombre)
cliente(id, tipo)
clientepersona(idcliente, idpersona)
empresa(id, nombre, idpersonadueno)
establecimiento(id, idempresa, nombre)
clienteestablecimiento(idcliente, idestablecimiento)
remitosalida(id, numeroremito, serieremito, fecharemito, idcliente)
remitosalidadetalle(idremitosalida, idmedicamento, cantidad)
yo tengo que listar todos los remitos de salidas con su detalle, el medicamnto y el cliente del remito,
el tema que como hay varios cliente no se como hacer, puede llegar a sacar todos los remitos con su detalle, su medicamento y su cliente pero solo de un tipo de cliente (es decir de cliente persona por ejemplo, qie para sacar los datos de la persona hago join con persona).
pero tengo que listar todos los remitos con los clientepersonas y los clienteestablecimiento.
esto lo que yo hago:
Código SQL:
Ver originalSELECT vrsd.rsd_idmedicamento,vresa.resa_fecharemito,vresa.resa_numeroremito,vresa.resa_serie , vrsd.rsd_cantidad, vcli.cli_id,vper.*
FROM vet_remitosalida vresa,vet_remitosalidadetalle vrsd,vet_cliente vcli, vet_clientepersona vclpe, vet_persona vper,
WHERE
vresa.resa_idcliente = vcli.cli_id
AND vcli.cli_id IN (
SELECT vclpe2.clpe_idcliente FROM vet_clientepersona vclpe2 WHERE vclpe2.clpe_idcliente = vclpe.clpe_idcliente
AND vclpe2.clpe_idpersona = vper.per_id)
con esto puedo sacar los remitos del clientepersona con los datos de la persona
pero despues de los parentisis le pongo
or (vcli in(aca hago la seleccion con cliente establecimiento, con empresa y con el dueno de la empresa y me tiro muchas filas que no son las que tengo registradas)
Desde ya muchas gracias
Saludos