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

GROUP BY, SUM + WHERE


Camila Santos

Pergunta

Preciso fazer uma consulta mas o comando que não ta funcionando, me ajuda ai por favor tentando me orientar onde estou errando e porque...

Tenho uma tabela de notas fiscais de entradas. Quero selecionar alguns campos dela e soma-los para conferir se os valores dentro de um determinado período somam realmente o que o relatório no sistema informa ou se bate com os valores do escritório de contabilidade, que divergem do sistema. Conferi nota por nota no sistema de acordo com o relatório de contabilidade e todas as notas estão lançadas ok. Porém, da uma diferença de 12 mil reais pra mais no sistema. Acredito que possa ser alguma nota que o cliente lançou com data errada no período, por isso queria fazer a consulta diretamente no banco pra tirar a prova real, digamos assim

Segue query que to tentando usar

select notafiscal, datadaemissao, datadachegada, totalnota, sum(totalnota) as total_geral (esses são os dados que preciso puxar pro caso de dar a mais, conferir quais notas estão a mais ai)

from nf_entra (a tabela que to puxando)

where datadachegada between '01.02.2012' and '29.02.2012' (preciso das notas dentro desse periodo)

group by datadachegada, total_geral

Ele não funcionad. Essa base esta no ibExpert... Não consigo executar a consulta e não consegui identidicar onde estou errado.

Ele da esse erro

"Invalid token.

Dynamic SQL Error.

SQL error code = -104.

Cannot use an aggregate function in a GROUP BY clause."

Ai eu tiro o group by e da um erro que cobrando o GROUP BY

"Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause)."

Se puderem me ajudar, ficarei agradecida

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Boa tarde Camila,

você dá um select em vários campos: notafiscal, datadaemissao, datadachegada e totalnota.

você quer agrupar pelos campos: datadachegada, total_geral.

O que está errado:

- você não pode agrupar por ALIAS.

- você especifica como retorno os campos notafiscal e datadaemissao, que não estão no agrupamento.

Ou você coloca as colunas de retorno no agrupamento, ou as retira.

Link para o comentário
Compartilhar em outros sites

  • 0
Boa tarde Camila,

você dá um select em vários campos: notafiscal, datadaemissao, datadachegada e totalnota.

você quer agrupar pelos campos: datadachegada, total_geral.

O que está errado:

- você não pode agrupar por ALIAS.

- você especifica como retorno os campos notafiscal e datadaemissao, que não estão no agrupamento.

Ou você coloca as colunas de retorno no agrupamento, ou as retira.

Ola Fulvio, obrigada por sua resposta... Depois que postei que vi o que tava tentando fazer.... rs...

Resolvi isoladamente mesmo...

Fiz um select pra somar os valores

select sum(totalnota) as total_geral

from nf_entra

where datadachegada between '01.02.2012' and '29.02.2012'

E outro pra checar os numeros com os do relatorio

select notafiscal, datadaemissao, datadachegada, totalnota

from nf_entra

where datadachegada between '01.02.2012' and '29.02.2012'

order by notafiscal asc

E eu queria na verdade os resultados desses selects em uma unica tabela, era isso que tava tentando fazer...

Mas obrigada a ajuda

Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia Camila,

Caso queira o resultado em uma unica tabela, terá que fazer com um subselect. Mas aí perderá na performance e a manutenção fica um pouco mais complexa.

De nada. Caso tenha alguma dúvida, pode postar!! :)

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
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...