Sintaxe de SQL
Pessoal tenho 2 Tabelas com a seguinte estrutura:
Tabela Clientes
Li_idCliente
Str_NomeCliente
Li_Recebeinformativo
Tabela ContatoCliente
Li_IdContato
Li_idCliente
Str_NomeContato
Li_Recebeinformativo
O Campo Li_recebeInformativo é alimentado com 1 ou 2 ou seja 1 Para sim e 2 para não
O campo Li_recebeinformativo esta nas duas tabelas porque pode ter cliente que eu queira enviar email para um contato especifico
Então quando eu quero enviar email para um cliente sem especificar o contato eu marco com sim o cliente e todos os contatos deste cliente ficam como não
e quando eu quero enviar um email para um cliente especificando os Contatos ai marco com sim o Cliente e com sim quais contatos vai receber o email
imaginamos estes dois registros:
Tabela Cliente
1 josé da silva 1
2 Antonio da Silva 1
Tabela ContatoCliente
1 1 Paulo 1
2 1 Silvio 1
3 2 João 2
O Sql que eu Preciso deve retornar o seguinte conteúdo:
1 José da silva Paulo
1 José Da Silva Silvio
2 Antonio da Silva Null
Não consigo fazer este SQL agora não sei se não tem como fazer ou se é apenas eu que não sei fazer, espero que seja o segundo
Abraços a todos
Tabela Clientes
Li_idCliente
Str_NomeCliente
Li_Recebeinformativo
Tabela ContatoCliente
Li_IdContato
Li_idCliente
Str_NomeContato
Li_Recebeinformativo
O Campo Li_recebeInformativo é alimentado com 1 ou 2 ou seja 1 Para sim e 2 para não
O campo Li_recebeinformativo esta nas duas tabelas porque pode ter cliente que eu queira enviar email para um contato especifico
Então quando eu quero enviar email para um cliente sem especificar o contato eu marco com sim o cliente e todos os contatos deste cliente ficam como não
e quando eu quero enviar um email para um cliente especificando os Contatos ai marco com sim o Cliente e com sim quais contatos vai receber o email
imaginamos estes dois registros:
Tabela Cliente
1 josé da silva 1
2 Antonio da Silva 1
Tabela ContatoCliente
1 1 Paulo 1
2 1 Silvio 1
3 2 João 2
O Sql que eu Preciso deve retornar o seguinte conteúdo:
1 José da silva Paulo
1 José Da Silva Silvio
2 Antonio da Silva Null
Não consigo fazer este SQL agora não sei se não tem como fazer ou se é apenas eu que não sei fazer, espero que seja o segundo
Abraços a todos
Ari
Curtidas 0
Respostas
Everton
06/02/2004
Ari, dê uma olhada no SQL sugerido pra vc, pelo Adilson, no tópico abaixo:
http://delphiforum.icft.com.br/forum/viewtopic.php?t=34994
http://delphiforum.icft.com.br/forum/viewtopic.php?t=34994
GOSTEI 0
Ari
06/02/2004
Everton eu olhei aquele SQL tentei implantar mas não consegui, por isso que pedi auxilio novamente.
GOSTEI 0
Fabio.hc
06/02/2004
O sql pode ser assim:
SELECT * FROM Clientes T
left join ContatoCliente C ON T.Li_idCliente = C.Li_idCliente
Mas, com estes dados que vc passou,
para ter o resultado que vc quer:
Esta linha não deixa dar o resultado
3 2 João 2
Trazendo assim:
SELECT * FROM Clientes T
left join ContatoCliente C ON T.Li_idCliente = C.Li_idCliente
Mas, com estes dados que vc passou,
Tabela Cliente
1 josé da silva 1
2 Antonio da Silva 1
Tabela ContatoCliente
1 1 Paulo 1
2 1 Silvio 1
3 2 João 2
para ter o resultado que vc quer:
1 José da silva Paulo
1 José Da Silva Silvio
2 Antonio da Silva Null
Esta linha não deixa dar o resultado
3 2 João 2
Trazendo assim:
1 José da silva Paulo
1 José Da Silva Silvio
2 Antonio da Silva João
GOSTEI 0
Ari
06/02/2004
Fabio é justamente a terceira linha que esta o meu problema o nome do contato não deve aparecer porque ele não esta setado como sim
GOSTEI 0
Ari
06/02/2004
Emerson era isso mesmo que precisava valeu mesmo pela ajuda
Galera muito obrigado mais uma vez pela colaboração de todos
Galera muito obrigado mais uma vez pela colaboração de todos
GOSTEI 0