Ir para conteúdo
Fórum Script Brasil
  • 0

Sql


Guest Zordrac

Pergunta

Olá

D7 ,Firebird 1.5, ZeosDb0 6.1.5

Tenho uma tabela de materiais por empresa.Filtro por um combobox (onchange >filter)

Nesta tabela estão diversos materiais com suas datas de compra.

Preciso SQL

Que selecione da tabela materiais, SÓ os Materiais por fábrica indicada no combobox

Some as quantidades de cada material IGUAL da tabela com data para compra IGUAL.

SE data de compra for diferente executa outra soma MESMO se o material for igual

Lista por material/quantidade/data

MATERIAL A/ 200PEÇAS/ 25/09

MATERIAL A/ 100PEÇAS/ 26/09

MATERIAL A/ 200PEÇAS/ 27/09

MATERIALB/ 150PEÇAS/ 24/09

MATERIALB/ 350PEÇAS/ 25/09

MATERIALB/ 150PEÇAS/ 26/09

E assim por diante

Deve ser bem simples mas não uso muito SQL.

Agradeço qualquer ajuda

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

cara... não dá pra entender direito o q você quer fazer... tentah postar um pouco mais explicado.. talvez eu consiga t ajudar... do jeito q tah não entendi direito o q você precisa...

Vlw.

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado pela atenção e desculpe se não fui claro

Esta seria a tabela

Material qtd data

AAAAA 200 04/09

AAAAA 100 04/09

BBBBB 100 05/09

BBBBB 100 05/09

BBBBB 100 05/09

CCCC 200 05/09

CCCC 100 05/09

CCCC 100 06/09

CCCC 100 06/09

Somar os materiais IGUAIS COM DATA IGUAL

AAAAA 300 04/09

BBBBB 300 05/09

CCCC 300 05/09

CCCC 200 06/09

Soma as qtd do mesmo material até mudar a data.Como no material CCCC somou todos iguais mas respeitando as datas 05/09 300 e 06/09 200.

Espero ter sido claro.Grato desde já´.

Link para o comentário
Compartilhar em outros sites

  • 0

Após muitas tentativas funcionou assim:

with dm2.ZqSomaM66 do begin //4

Close;

SQL.Clear;

SQL.ADD ('Select DISTINCT DTCMPR,MATERIAL_EST,');

SQL.ADD ('SUM(QTD)as TOTAL ,');

SQL.ADD ('From MATEREMESSAFNL ');

SQL.ADD ('Where fabrica =:fabrica' );

SQL.ADD ('group by DTCMPR, MATERIAL_EST');

SQL.ADD ('ORDER by MATERIAL_EST, DTCMPR ASC');

ParamByName('fabrica').AsString := combobox1.Text;

open;

end;

Obrigado de qualquer forma.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...