Ajuda em SQL

Delphi

05/02/2004

Pessoal tenho duas tabelas, cliente e ContatoCliente tenho um campo em comum nas duas tabelas Li_recebeinformativo caso o campo da tabela cliente esteje como sim a Consulta deverá retornar apenas o cliente e caso este cliente tenha Três contatos sendo que dois esteja com o campo como sim o sistema deve retornar dois registro com o mesmo nome de cliente mas com contatos diferente, abaixo esta um exemplo de como estou tentando resolver mas não esta dando certo estou usando o Banco Firebird
Select
Clientes.*,
ContatoCliente.*
From Clientes Left Join ContatoCliente on (Clientes.Li_IdCliente = ContatoCliente.Li_IdCliente)
Where ((ContatoCliente.Li_RecebeInformativo = 1) or (ContatoCliente.Li_RecebeInformativo is null))
And (Clientes.Li_RecebeInformativo = 1)

Conto mais uma vez com a ajuda de vcs


Ari

Ari

Curtidas 0

Respostas

Everton

Everton

05/02/2004

Olá Ari,

como é a estrutura da sua tabela ContatoCliente ?


GOSTEI 0
Adilsond

Adilsond

05/02/2004

Select Clientes.A,
       Clientes.B,
       Clientes.C,
       Clientes.D,
       null as E,
       null as F,
       null as G,
       null as H
From Clientes
Where Clientes.Li_RecebeInformativo = 1
UNION ALL
Select Clientes.A,
       Clientes.B,
       Clientes.C,
       Clientes.D,
       ContatoCliente.E,
       ContatoCliente.F,
       ContatoCliente.G,
       ContatoCliente.H
From Clientes,
     ContatoCliente
Where Clientes.Li_IdCliente = ContatoCliente.Li_IdCliente
  and Clientes.Li_RecebeInformativo is null
  and ContatoCliente.Li_RecebeInformativo = 1
ORDER BY 1,2



GOSTEI 0
POSTAR