Problema com relacionamento entre tabelas

Firebird

16/01/2009

Bom dia pessoal, preciso mto de uma ajuda!

Eu possuo 2 tabelas no Firebird e elas com se relacionam 1-N
são elas: MES e PAGAMENTO
eu preciso listar todos os mêses e seus respectivos pagamentos, mesmo que não tenha pagamento o mês tem que ser mostrado.
Até aí blz, mas o problema é quando eu adiciono uma terceira tabela, a tabela CLIENTE que se relaciona com a tabela PAGAMENTO
se eu filtro por determinado cliente e ele só pagou um mês, meu select só resulta um único registro, mas eu preciso que sejam mostrados os outros mêses indicando que não foi pago.

Alguem sabe me dizer como faço para solucionar este problema??

Agradeço mto!!!


Vfmartins

Vfmartins

Curtidas 0

Respostas

Rodolpho123

Rodolpho123

16/01/2009

VfMartins,

Só vai funcionar isso apenas no Fb 2.0+

select m.mes, pgto.pagamento, cl.cliente
     from mes m
     left outer join pagamento pgto on (pgto.idmes = m.idmes),
     left outer join (select c.cliente, m.idmes
                       from cliente c
                      inner join pagamento pg on (pg.idcliente = c.idcliente)
                      inner join mes m2 on (m2.idmes = pg.idmes)
                     ) cl on (cl.idmes = m.idmes)



GOSTEI 0
Vfmartins

Vfmartins

16/01/2009

Cara, muito obrigado! Sua dica funcionou perfeitamente e resolveu meu problema. Agradeço pela sua diponibilidade em ajudar!


GOSTEI 0
POSTAR