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? > > > > > > >
