Complicado, hein, Vinicius.

  Será que não é o HAVING ? Porque o LEFT OUTER JOIN vai retornar nulo se o 
registro não existir.  A dúvida que fica é como o HAVING trataria isso ...

--- Em qua, 1/4/09, Vinicius da Silva Pinto <vinic...@cnen.gov.br> escreveu:

De: Vinicius da Silva Pinto <vinic...@cnen.gov.br>
Assunto: RES: [delphi-br] Ajuca com SQL
Para: delphi-br@yahoogrupos.com.br
Data: Quarta-feira, 1 de Abril de 2009, 7:56











    
            Grande Jose, olha, o resultado foi o mesmo, todas as duas opções (a 
minha e

a sua com left outer join) deram o mesmo resultado.

estou fazendo teste com coalesce...



Vinicius



Tenta assim :



 SELECT A.CDPEDIDO, A.DATAEVENTO, A.VALOR, SUM( G.VALORPAGTO )

 FROM BDPEDIDOS A LEFT OUTER JOIN BDPAGAMENTOS G ON A.CDPEDIDO = G.CDPEDIDO

 WHERE A.DATAEVENTO <= '01/04/2009'



GROUP BY CDPEDIDO, DATAEVENTO, VALOR



HAVING SUM(G.ValorPgto) < A.valor



Entendeu ?



Vê se funciona.

--- Em sex, 27/3/09, Vinicius da Silva Pinto <vinic...@cnen. gov.br>

escreveu:



De: Vinicius da Silva Pinto <vinic...@cnen. gov.br>

Assunto: [delphi-br] Ajuca com SQL

Para: delphi...@yahoogrup os.com.br

Data: Sexta-feira, 27 de Março de 2009, 15:33



Ve se alguem pode me ajudar, já quebrei a cabeça e não obtive o

resultado

satisfatório.



São duas tabelas, bem simples uma com os dados de um pedido com codigo,

nome...e ValorTotal.



Na outra tabela, a de pagamentos, só tem registro quando o cliente paga,

pode ser a vista ou parcelado.



As duas tabelas são unidas pelo campo CDpedido

O que eu quero é o seguinte... um relação de todos os pedidos que ainda não

pagaram o valor total.



Fiz a seguinte query:



SELECT A.CDPEDIDO, A.dataevento, A.valor AS VALORTOTAL, SUM(G.ValorPgto) AS

TOTALPAGO

FROM BDpedidos A, BDpagamentos G

WHERE G.CDpedido = A.CDpedido AND A.DATAEVENTO <= '01/04/2009'

GROUP BY CDPEDIDO, DATAEVENTO, VALOR

HAVING SUM(G.ValorPgto) < A.valor



Funciona, só que só aparecem os pedidos que já tiveram algum pagamento, os

registros que estão na

tabela principal que ainda não tiveram nenhum pagamento, não sai...



Pergunta.... . como faço para aparecer tbm os registros que não tiveram



pagamento.



Agradeço qualquer ajuda ou dica.



Vinicius



Veja quais são os assuntos do momento no Yahoo! +Buscados

http://br.maisbusca dos.yahoo. com



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



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



--

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




 

      

    
    
        
         
        
        








        


        
        


      Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

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

Responder a