[firebase-br] SELECT COM UNION

Renato Deggau rdeggau em gmail.com
Sáb Abr 28 18:48:25 -03 2007


Marco, entendi que rodando os selects separados não dá erro; o que estou
sugerindo e rodar COM o UNION mas tirando alguns campos

Considerando o select que mandasses agora, roda assim (coniserando que "--"
são linhas comentadas:

SELECT campo_1
--,
--            case campo_1
--               when x then (Select nome from tabela_M
--                                         where tabela_M.Codigo
=Tabela_A.codigo)
--               when y then (Select nome from tabela_N
--                  where tabela_N.Codigo = Tabela_A.codigo)
--            end as descricao
  from Tabela_A
union all
SELECT campo_1
--,
--            case campo_1
--               when x then (Select nome from tabela_O
--                                         where tabela_O.Codigo
=Tabela_B.codigo)
--               when y then (Select nome from tabela_P
--                                         where tabela_P.Codigo
=Tabela_B.codigo)
--            end as descricao
  from Tabela_B


Se o select acima funcionar,voce sabe que não é com o campo_1 o problema e
assim sucessivamente; e dai vai incluindo o segundo, o terceiro e o quarto
campo em ambas as querys

Renato

On 4/28/07, Marco Antonio Albuquerque <marcksystem em hotmail.com> wrote:
>
> ja fiz, rodando separado do union ambos rodam certinho.
> A estrutura simplificada seria mais ou menos assim...
>
> SELECT campo_1,
>              case campo_1
>                 when x then (Select nome from tabela_M
>                                           where tabela_M.Codigo =
> Tabela_A.codigo)
>                 when y then (Select nome from tabela_N
>                                           where tabela_N.Codigo =
> Tabela_A.codigo)
>              end as descricao
>    from Tabela_A
> union all
> SELECT campo_1,
>              case campo_1
>                 when x then (Select nome from tabela_O
>                                           where tabela_O.Codigo =
> Tabela_B.codigo)
>                 when y then (Select nome from tabela_P
>                                           where tabela_P.Codigo =
> Tabela_B.codigo)
>              end as descricao
>    from Tabela_B
>
> Acho que assim fica mais claro...
>
> Agradeço
>
>
> >From: "Renato Deggau" <rdeggau em gmail.com>
> >Reply-To: FireBase <lista em firebase.com.br>
> >To: FireBase <lista em firebase.com.br>
> >Subject: Re: [firebase-br] SELECT COM UNION
> >Date: Sat, 28 Apr 2007 18:06:57 -0300
> >
> >Marco,
> >
> >é dificil assim no visual, mas uma alternativa seria voce comentar todos
> os
> >campos (menos 1) nas 2 querys junto com o UNION; roda e ve se funciona; e
> >assim vai sucessivamente liberando 1 a 1 até descobrir onde está a
> >inconsistencia
> >
> >
> >Ou seja, na primeira execucao voce só rodaria o
> >SELECT cons.ID_CAD001
> >-----
> >----
> >UNION ALL
> >SELECT s.ID_CAD001
> >-----
> >
> >
> >Renato Deggau
> >
> >On 4/28/07, Marco Antonio Albuquerque <marcksystem em hotmail.com> wrote:
> > >
> > > Boa tarde colegas,
> > >                         será que alguem poderia me ajudar num select
> >meio
> > > complicado? Acontece o seguinte, tenho um select de uma tabela A com
> >union
> > > em outra B em ambas tenho uma condição case que faz um subselect em
> > > diversas
> > > tabelas. Se rodo separado do union as duas funcionam bem, porém com a
> > > junção
> > > UNION da erro de Data type unknown. Tentei resolver isso usando cast
> nos
> > > possíveis campos porém não deu certo. Alguém teria alguma idéia
> > >
> > >
> >______________________________________________
> >FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >Para editar sua configuração na lista, use o endereço
> >http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> _________________________________________________________________
> Verificador de Segurança do Windows Live OneCare: verifique já a segurança
> do seu PC! http://onecare.live.com/site/pt-br/default.htm
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista