[firebase-br] Ajuda com JOIN

Eduardo Pombo eduardo em embras.net
Seg Ago 23 11:48:20 -03 2010


SELECT

   C.ID_CLIENTE,

   C.RAZAOSOCIAL,

   (select first 1 TEL.TELEFONE from TBL_TELCLI TE where
TEL.ID_CLIENTE = C.ID_CLIENTE AND TEL.ID_TIPOTEL = 1) as TELEFONE

FROM

   TBL_CLIENTE C

ORDER BY

   ID_CLIENTE

espero ter ajudado

Em 23 de agosto de 2010 11:31, Jáber - Cpd Lekagi <cpd em lekagi.com.br> escreveu:
> Olá pessoal.
>
> Tenho uma tabela de cadastro de clientes(TBL_CLIENTE) e uma tabela com os
> telefones dos cliente(TBL_TELCLI).
>
> Utilizo o seguinte comando para listar os clientes em um DBGrid(Delphi)
>
>
>
> SELECT
>
>    C.ID_CLIENTE,
>
>    C.RAZAOSOCIAL,
>
>    TEL.TELEFONE,
>
> FROM
>
>    TBL_CLIENTE C
>
> LEFT JOIN
>
>    TBL_TELCLI TEL ON TEL.ID_CLIENTE = C.ID_CLIENTE AND TEL.ID_TIPOTEL = 1
>
> ORDER BY
>
>    ID_CLIENTE
>
>
>
> Quando o cliente tem apenas um telefone com o tipo 1 cadastrado funciona
> 100%.
>
> O problema é que os clientes que tem mais de um telefone com o tipo 1 estão
> saindo mais de uma vez na listagem.
>
> Alguém poderia me dar uma dica de como fazer para selecionar apenas uma
> linha para cada cliente, independente da quantidade de telefones cadastrados
> na tabela TBL_TELCLI ?
>
>
>
> Espero ter conseguido me expressar bem.
>
> Grato pela atenção de todos,
>
>
>
> Jáber S. C. Lima
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 

Atenciosamente

José Eduardo Pombo de Barros
Gerente de Manutenção de Sistemas




Mais detalhes sobre a lista de discussão lista