voce pode usar o left join .....
  ----- Original Message ----- 
  From: Hélder Rodrigues 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Friday, January 28, 2005 10:34 AM
  Subject: Re: [delphi-br] SQL muito complexa, unir 2 select


  Oi Leandro ...

  Obrigado por responder a minha dúvida ... mas eu vi na ajuda do Delphi 
  ... que
  para usar UNION ... a estrutura das duas consultas tem que ser a mesma ...
  e no caso não vai dar pra usar ...

  ... e no caso, union "junta" o resultado das duas consultas uma embaixo 
  da outra ...
  e na verdade eu estava querendo é ter o resultado de 2 colunas com um 
  "where" diferente
  para uma e para outra ....

  ... mandei um segundo email com o título "SQL muito complexa, unir 2 
  select (2) !!!"
  ... dá uma olhada ... às vezes vc consegue me ajudar ...

  Novamente, obrigado.

  Att.

  Hélder

  ---------------------

  [EMAIL PROTECTED] escreveu:

  >Use UNION ALL entre os selects para uní-los. Só que o group by só
  >sera aceito no ultimo select. Se quiser, pode usar group by pelo numero da
  >coluna. Por exemplo, se quiser agrupar pela primeira e segunta colunas,
  >use:
  >
  >GROUP BY 1,2
  >
  >
  >Att,
  >
  >Leandro
  >
  >--
  >Open WebMail Project (http://openwebmail.org)
  >
  >
  >---------- Original Message -----------
  >From: Hélder Rodrigues <[EMAIL PROTECTED]>
  >To: "delphi-br@yahoogrupos.com.br" <delphi-br@yahoogrupos.com.br>, "delphi-
  >[EMAIL PROTECTED]" <[EMAIL PROTECTED]>, "lista-
  >[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
  >Sent: Fri, 28 Jan 2005 10:39:18 -0200
  >Subject: [delphi-br] SQL muito complexa, unir 2 select
  >
  >  
  >
  >>Bom dia amigos,
  >>
  >>Estou precisando unir duas consultas SQL ... (a base de dados 
  >>utilizada tabelas Paradox) e não sei qual cláusula usar (não tenho 
  >>muito experiência no assunto ...) devo usar UNION ou JOIN ???
  >>
  >>A 1ª consulta é essa:
  >>----------------------
  >>SELECT
  >>Cq_dd."CodCQ_MOEDA" ,
  >>Cq_dd."CodCQ_CLASS" ,
  >>(Cq_insum.Descricao)  as Insumo,
  >>(Cq_fatpl.Periodo) as Periodo,
  >>(Cq_Ativ.NomeAtividade),
  >>(Cq_Ativ.IndiceOutLine),
  >>(Cq_Ativ.IndicePaterno),
  >>(sum(Cq_fatpl.QuantidadeNaoAcumulada *
  >>Cq_dd.QuantInsumo *
  >>Cq_dd.CustoUnitario)) as Custo
  >>FROM
  >>"Cq_fatpl.DB" Cq_fatpl ,
  >>"Cq_dd.DB" Cq_dd ,
  >>"Cq_Ativ.DB" Cq_Ativ,
  >>"Cq_insum.DB" Cq_insum
  >>WHERE
  >>(Cq_fatpl.CodCQ_ATIV = Cq_dd.CodCQ_ATIV)
  >>AND
  >>(Cq_fatpl.CodCQ_ATIV = Cq_Ativ.CodCQ_ATIV)
  >>AND
  >>(Cq_dd.CodCQ_INSUM = Cq_insum.CodCQ_INSUM)
  >>AND
  >>(
  >>(Cq_fatpl."Periodo" = '10')
  >>AND
  >>(Cq_dd."CodCQ_CLASS" = '7')
  >>)
  >>GROUP BY
  >>(Cq_Ativ.NomeAtividade), (Cq_Ativ.IndiceOutLine),
  >>
  >>(Cq_Ativ.IndicePaterno), (Cq_insum.Descricao) , Cq_dd."CodCQ_CLASS" ,
  >> Cq_dd."CodCQ_MOEDA" , (Cq_fatpl.Periodo) ORDER BY 
  >>Cq_Ativ."IndiceOutLine", Cq_Ativ."IndicePaterno"
  >>----------------------
  >>... e ela retorna 140 registros.
  >>
  >>A 2ª consulta é essa:
  >>----------------------
  >>SELECT
  >>Cq_dd."CodCQ_MOEDA" ,
  >>Cq_dd."CodCQ_CLASS" ,
  >>(Cq_insum.Descricao)  as Insumo,
  >>(Cq_Ativ.NomeAtividade),
  >>(Cq_Ativ.IndiceOutLine),
  >>(Cq_Ativ.IndicePaterno),
  >>(sum(Cq_fatpl.QuantidadeNaoAcumulada *
  >>Cq_dd.QuantInsumo *
  >>Cq_dd.CustoUnitario)) as CustoAte
  >>FROM
  >>"Cq_fatpl.DB" Cq_fatpl ,
  >>"Cq_dd.DB" Cq_dd ,
  >>"Cq_Ativ.DB" Cq_Ativ,
  >>"Cq_insum.DB" Cq_insum
  >>WHERE
  >>(Cq_fatpl.CodCQ_ATIV = Cq_dd.CodCQ_ATIV)
  >>AND
  >>(Cq_fatpl.CodCQ_ATIV = Cq_Ativ.CodCQ_ATIV)
  >>AND
  >>(Cq_dd.CodCQ_INSUM = Cq_insum.CodCQ_INSUM)
  >>AND
  >>(
  >>(Cq_fatpl."Periodo" <= '10')
  >>AND
  >>(Cq_dd."CodCQ_CLASS" = '7')
  >>)
  >>GROUP BY
  >>(Cq_Ativ.NomeAtividade),
  >>(Cq_Ativ.IndiceOutLine),
  >>(Cq_Ativ.IndicePaterno),
  >>(Cq_insum.Descricao) ,
  >>Cq_dd."CodCQ_CLASS" ,
  >>Cq_dd."CodCQ_MOEDA"
  >>ORDER BY
  >>Cq_Ativ."IndiceOutLine", Cq_Ativ."IndicePaterno"
  >>----------------------
  >>... e ela retorna 157 registros.
  >>
  >>*************************************
  >>A diferença das duas é que a 1ª pega "somente" os registros "do" 
  >>período 10 e a 2ª pega todos os registros "até" o período 10 
  >>"incluindo" o período 10 ...
  >>
  >>Tem como unir essas duas consultas ?
  >>Alguém pode me dar uma dica ?
  >>
  >>Desde já muito obrigado.
  >>
  >>Atenciosamente,
  >>
  >>Hélder
  >>
  >>-- 
  >><<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
  >>
  >>Para ver as mensagens antigas, acesse:
  >> http://br.groups.yahoo.com/group/delphi-br/messages
  >>
  >>Para falar com o moderador, envie um e-mail para:
  >> [EMAIL PROTECTED] ou [EMAIL PROTECTED]
  >>
  >>Links do Yahoo! Grupos
  >>
  >>
  >>
  >>    
  >>
  >------- End of Original Message -------
  >
  >
  >
  >  
  >


  [As partes desta mensagem que não continham texto foram removidas]



  -- 
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

  Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages

  Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]



        Yahoo! Grupos, um serviço oferecido por: 
              PUBLICIDADE
                
       


------------------------------------------------------------------------------
  Links do Yahoo! Grupos

    a.. Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/
      
    b.. Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]
      
    c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço 
do Yahoo!. 




[As partes desta mensagem que não continham texto foram removidas]






-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a