self join com gridview

27/03/2010

0

Estou retornado a seguinte consulta em uma gridview:

SELECT u1.nome_razaosocial, u1.email, u1.tipo_tel, u1.telefone, t.descricao,
             t.id_trab_voluntario, u1.usu_cpf_cnpj, u2.usu_cpf_cnpj
   FROM usuario u1 inner join trabalho t
       on u1.usu_cpf_cnpj = t.usu_cpf_cnpj
       inner join  usuario u2
       on u2.usu_cpf_cnpj = t.bene_cpf_cnpj
       order by u1.nome_razaosocial


Nesse caso fiz um self join onde o campo usu_cpf_cnpj é o mesmo. Porém retorna resultados diferentes com o alias u1 e u2. O problema é que o gridview não consegue diferenciar campos iguais de tabelas diferentes ou campos iguais vindos de um self join. No meu caso ele está interpretando que usu_cpf_cnpj é o referente a u1.usu_cpf_cnpj. Tentei indicar na grid o valor "u1.usu_cpf_cnpj" no DataField mas ele dá um erro dizendo que não reconhece o campo. Já tentei renomear o campo desta maneira: .. u1.usu_cpf_cnpj as 'Associado' .. mas ele tb não reconhece. Alguem saberia como fazer isto?

abs,

Bruno

Bruno Franco

Bruno Franco

Responder

Posts

29/03/2010

Netasper

Bruno, Usando alias tem que funionar, funciona para mim:   SELECT u1.nome_razaosocial, u1.email, u1.tipo_tel, u1.telefone, t.descricao,
             t.id_trab_voluntario, u1.usu_cpf_cnpj as cpf1, u2.usu_cpf_cnpj as cpf2 
   FROM usuario u1 inner join trabalho t
       on u1.usu_cpf_cnpj = t.usu_cpf_cnpj
       inner join  usuario u2
       on u2.usu_cpf_cnpj = t.bene_cpf_cnpj
       order by u1.nome_razaosocial
[]s
Responder

31/03/2010

Bruno Franco

Sim, funcionou.


Obrigado,

Bruno
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar