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]
 
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