[firebase-br] Erro no Group by

Renan de Oliveira renan em safetech.inf.br
Sex Ago 25 16:45:22 -03 2006


na verdade, a coluna que falta colocar no group by pelo que percebi, eh a
PERC,
tu nao pode usar o "7" pois assim tu ta agrupando tambem as colunas com
somatório "SUM", o que nao pode acontecer.
eu particularmente coloco na group by sempre o nome das colunas, e usa os
números na order by.


Renan de Oliveira
Safetech Informática
(51) 3529-3870
----- Original Message ----- 
From: "fabio giro" <fabio_giro em yahoo.com.br>
To: <lista em firebase.com.br>
Sent: Friday, August 25, 2006 4:34 PM
Subject: [firebase-br] Erro no Group by


Estou usando FB 1.5.2 e testando no ibexpert. O campo BRUTO contem o
somatorio de 2 campos e o Liquido é o percentual do BRUTO. Quando faço o
seguinte:
SELECT M.CODSIND, NOMESIND, NOMEEMP, AGENCIA, CONTA,
SUM(COALESCE(VALORMEDIO,0)) + SUM(COALESCE(LISTALOGVALOR,0)) BRUTO,
(SUM(COALESCE(VALORMEDIO,0)) + SUM(COALESCE(LISTALOGVALOR,0)) * (1 - (PERC /
100))) LIQUIDO
FROM MOVIMENTO M
INNER JOIN SINDICATO S ON M.CODSIND = S.CODSIND
INNER JOIN EMPRESA E ON M.CODSIND = E.CODSIND
AND M.CODEMP = E.CODEMP
WHERE DATA BETWEEN '01/01/2006' AND '01/31/2006'
GROUP BY 1,2,3,4,5
ORDER BY M.CODSIND, NOMEEMP

dá o seguinte erro:
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid expression in the select list (not contained in either an aggregate
function or the GROUP BY clause).

se faço o seguinte:
(...)
GROUP BY 1,2,3,4,5,7   <--- inclui o campo LIQUIDO
ORDER BY M.CODSIND, NOMEEMP

dá o seguinte erro:
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Cannot use an aggregate function in a GROUP BY clause.

Obrigado.



---------------------------------
 Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular.
Registre seu aparelho agora!
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa






Mais detalhes sobre a lista de discussão lista