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 

[Resolvido] Dois selects num mesmo campo

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


Registrado: Domingo, 9 de Abril de 2017
Mensagens: 13

MensagemEnviada: Dom Abr 09, 2017 10:16 am    Assunto: [Resolvido] Dois selects num mesmo campo Responder com Citação

Olá a todos!!
tenho uma tabela FIREBIRD com os seguintes campos:
produtoid, tipomov, quantidade, data
1----------SAida------------10--01/01/2017
1----------ENtrada-----------5--03/01/2017

gostaria de gerar um select de forma que me retorne assim:

produto-----entradas------saidas
1------------------5----------10

grato


Editado pela última vez por joseY em Seg Abr 10, 2017 11:37 am, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Dom Abr 09, 2017 10:56 am    Assunto: Responder com Citação

Bom dia,

Experimente mais ou menos dessa forma:

Código:
select
    Produto,
    sum(case when TipoMov = 'Entrada' then Quantidade else 0 end) as Entradas,
    sum(case when TipoMov = 'Saida' then Quantidade else 0 end) as Saidas
from Tabela
group by
    Produto


Espero que ajude


Editado pela última vez por imex em Qua Out 25, 2023 12:13 pm, num total de 2 vezes
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
joseY
Novato
Novato


Registrado: Domingo, 9 de Abril de 2017
Mensagens: 13

MensagemEnviada: Seg Abr 10, 2017 9:25 am    Assunto: Responder com Citação

Funcionou perfeitamente, obrigado, agora, tem como por um where para filtrar as data?

Grato
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
leo_cj
Colaborador
Colaborador


Registrado: Sábado, 26 de Março de 2011
Mensagens: 1335

MensagemEnviada: Seg Abr 10, 2017 9:31 am    Assunto: Responder com Citação

tente assim:
Código:
select
    Produto,
    sum(case when TipoMov = 'Entrada' then Quantidade else 0 end) as Entradas,
    sum(case when TipoMov = 'Saida' then Quantidade else 0 end) as Saidas
from Tabela
where SEU_CAMPO_DATA between SUA_DATA_INICIAL and SUA_DATA_FINAL
group by
    Produto
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
joseY
Novato
Novato


Registrado: Domingo, 9 de Abril de 2017
Mensagens: 13

MensagemEnviada: Seg Abr 10, 2017 9:38 am    Assunto: Resolvido dois select num mesmo campo Responder com Citação

Funcionou perfeitamente, nota 10.

Obrigado Gente
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