ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Duvida encontrar maior saldo

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
rogerm
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 23 de Mai de 2005
Mensagens: 139

MensagemEnviada: Qui Dez 14, 2006 10:23 pm    Assunto: Duvida encontrar maior saldo Responder com Citação

Moderadores Active-Delphi escreveu:

Tópico movido por Sufolk.
Motivo: Respeite a divisão do Fórum.



Saudações!!!!

Tenho uma tela que mostra todas as contas a serem fechadas (da tabela CONTAS). Quando seleciono uma conta para fazer o fechamento, é exibida uma tela onde informa o último saldo do cliente, que será utilizado no pagamento da conta.

O select que utilizei foi:

select CD_CTA SALDO, DATA from SALDOS
where CD_CTA =
(select max(CD_CTA) from SALDOS
where CD_CLIE = :CODCLIE)

Com base neste select, seria possível mostrar o último saldo de cada cliente, sendo que no caso acima mostra apenas de um?

Estou utilizando delphi 2006 (sqldataset, datasetprovider e clientdataset) e firebir 1.5

Grato,

Rogério
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Sufolk
Moderador
Moderador


Registrado: Terça-Feira, 26 de Agosto de 2003
Mensagens: 1996

MensagemEnviada: Sex Dez 15, 2006 2:38 pm    Assunto: Responder com Citação

Experimente fazer assim:

Código:

select CD_CLIE, max(SALDO)
from SALDOS
group by CD_CLIE


Sufolk.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
rogerm
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 23 de Mai de 2005
Mensagens: 139

MensagemEnviada: Sex Dez 15, 2006 10:11 pm    Assunto: Responder com Citação

Sufolk, em primeiro lugar, agradeço muito pela ajuda. Eu testei a solução, porém com selects realizados percebi que o valor obtido não era referente à útlima conta que ele abriu. Um amigo meu, que há tempo não encontrava pelo msn, apresentou-me uma solução, que foi a definitiva.

Veja:

select a.CD_CLIE, a.CD_CTA, a.DATA, a.SALDO
from SALDOS a
where a.CD_CTA = (select max(b.CD_CTA) from SALDOS b
where a.CD_CLIE = b.CD_CLIE)

Isso é uma AUTO-JUNÇÃO, é uma união de uma tabela com ela mesma.

Valeu mais uma vez,

Abraço,
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB