Pesquisando no google descobri que:
o erro -67 = Aggregate not valid in subquery of FROM clause

Só me falta saber como consertar isso....

2008/4/27 Saul Lima <[EMAIL PROTECTED]>:

> Obrigado pela ajuda.... Segui sua dica, mas persiste o mesmo erro. Só
> consigo introduzir a soma quando o campo a ser somado está sozinho na
> consulta.... Ficou assim a consulta:
>
> SELECT "pagamentos"."CodCliente", "clientes"."Nome",
> "clientes"."Sobrenome", "clientes"."Endereço", "clientes"."Bairro",
> "clientes"."DataNascimento", "pagamentos"."MesRef", "pagamentos"."AnoRef",
> SUM( "planos"."Valor" ) FROM "pagamentos", "clientes", "mes", "planos" WHERE
> "pagamentos"."CodCliente" = "clientes"."CodCliente" AND
> "pagamentos"."MesRef" = "mes"."NomeMes" AND "clientes"."Plano" =
> "planos"."Plano" AND "pagamentos"."AnoRef" = :Ano AND "mes"."NumMes" = :Mês
> GROUP BY "pagamentos"."MesRef", "pagamentos"."AnoRef"
>
>
> Ainda assim persiste o mesmo erro:
>
> Status SQL: 37000
> > Código de erro: -67
> >
> > Not in aggregate function or group by clause:
> > [EMAIL PROTECTED] in statement [SELECT
> > "pagamentos"."CodCliente", "clientes"."Nome", "clientes"."Sobrenome",
> > "clientes"."Endereço", "clientes"."Bairro", "clientes"."DataNascimento",
> > "pagamentos"."MesRef", "pagamentos"."AnoRef", SUM( "planos"."Valor" ) FROM
> > "pagamentos", "clientes", "mes", "planos" WHERE "pagamentos"."CodCliente" =
> > "clientes"."CodCliente" AND "pagamentos"."MesRef" = "mes"."NomeMes" AND
> > "clientes"."Plano" = "planos"."Plano" AND "pagamentos"."AnoRef" = :Ano AND
> > "mes"."NumMes" = :Mês GROUP BY "pagamentos"."MesRef", "pagamentos"."AnoRef"]
> >
>
>
>
> 2008/4/27 Inacio Marques <[EMAIL PROTECTED]>:
>
> Prezado Saul.
> >
> > Quando utiliza-se funções de agregação (tipo SUM), os demais campos
> > devem
> > estar agrupados.
> > Isto significa que sua consulta deve ficar mais ou menos assim:
> >
> > SELECT "pagamentos"."MesRef", "pagamentos"."AnoRef", SUM(
> > "planos"."Valor" )
> > FROM "pagamentos", "planos" WHERE "pagamentos"."MesRef" = :Mês AND
> > "pagamentos"."AnoRef" = :Ano
> > GROUP BY "pagamentos"."MesRef", "pagamentos"."AnoRef"
> >
> > Atenciosamente.
> >
> > Inácio
> >
> >
> >
> >
> > Em 27/04/08, Saul Lima <[EMAIL PROTECTED]> escreveu:
> > >
> > > Estou desenvolvendo um BD para uma empresa aqui da minha cidade e
> > preciso
> > > que uma consulta retorne a soma dos valores de mensalidade recebidos.
> > Mas
> > > ao
> > > selecionar a função soma na criação da consulta, a mesma exibe o
> > seguinte
> > > erro ao ser executada:
> > >
> > > Status SQL: 37000
> > > Código de erro: -67
> > >
> > > Not in aggregate function or group by clause:
> > > [EMAIL PROTECTED] statement [SELECT
> > > "pagamentos"."MesRef", "pagamentos"."AnoRef", SUM(
> > > "planos"."Valor" ) FROM "pagamentos", "planos" WHERE
> > "pagamentos"."MesRef"
> > > =
> > > :Mês AND "pagamentos"."AnoRef" = :Ano]
> > >
> > > Em informações do erro aparece o seguinte:
> > >
> > > O comando SQL que causou o erro foi:
> > >
> > > SELECT "pagamentos"."MesRef", "pagamentos"."AnoRef", SUM(
> > "planos"."Valor"
> > > )
> > > FROM "pagamentos", "planos" WHERE "pagamentos"."MesRef" = :Mês AND
> > > "pagamentos"."AnoRef" = :Ano
> > >
> > > Como devo fazer para a consulta retornar a soma dos valores de
> > mensalidade
> > > pagos?
> > >
> >
>
>

Responder a