Problema con Group By
Publicado por Emy (2 intervenciones) el 26/04/2006 14:18:13
Hola a todos, tengo una duda y no veo luz, tengo un super query, que requiere select anidados dentro del select principal, y ademas, requiere en ese select principal unas sumatorias, por lo que tengo que usar un group by, el problema es que me genera error ora-00979, de que hay un campo que no es del group by. Si quito las sumas, compila con los select, o si quito los select y dejos las suma tambien compila, pero con ambas no, que puede ser?
el query es algo asi
SELECT
(SELECT ARA.BALANCE
FROM ARAGING ARA
WHERE ARA.MINDAYS = 0
AND ARA.MAXDAYS = 30
AND 15 = (ARA.GENERATEDDATE - SYSDATE)),
(SELECT ARA.BALANCE
FROM ARAGING ARA
WHERE ARA.MINDAYS = 31
AND ARA.MAXDAYS = 60
AND 15 = (ARA.GENERATEDDATE - SYSDATE)),
TELM.CLIENTTYPE
SUM(TELP.CURRENTDUEBALANCE),
SUM(TELQ.PAYAMOUNT + TELQ.TAXAMOUNT),
MIN(TELQ.EXPIREDATE)
FROM TELMASTERLINES TELM,
CLIENTSERVICES CLIE,
ARAGING ARA,
TELPAYAGREEMENTS TELP,
TELPAYAGREEMENTQUOTAS TELQ,
MASTERACCOUNTS MAS,
TELSUBACCOUNTS TELB
WHERE TELB.CLIENTSERVICEID = TELM.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = CLIE.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = ARA.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = TELQ.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = MAS.CUSTOMERID
GROUP BY
CLIE.STATUS,
CLIE.NOTIFNAME,
MAS.PLANNAME,
TELM.CLIENTTYPE
el query es algo asi
SELECT
(SELECT ARA.BALANCE
FROM ARAGING ARA
WHERE ARA.MINDAYS = 0
AND ARA.MAXDAYS = 30
AND 15 = (ARA.GENERATEDDATE - SYSDATE)),
(SELECT ARA.BALANCE
FROM ARAGING ARA
WHERE ARA.MINDAYS = 31
AND ARA.MAXDAYS = 60
AND 15 = (ARA.GENERATEDDATE - SYSDATE)),
TELM.CLIENTTYPE
SUM(TELP.CURRENTDUEBALANCE),
SUM(TELQ.PAYAMOUNT + TELQ.TAXAMOUNT),
MIN(TELQ.EXPIREDATE)
FROM TELMASTERLINES TELM,
CLIENTSERVICES CLIE,
ARAGING ARA,
TELPAYAGREEMENTS TELP,
TELPAYAGREEMENTQUOTAS TELQ,
MASTERACCOUNTS MAS,
TELSUBACCOUNTS TELB
WHERE TELB.CLIENTSERVICEID = TELM.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = CLIE.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = ARA.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = TELQ.CLIENTSERVICEID
AND TELB.CLIENTSERVICEID = MAS.CUSTOMERID
GROUP BY
CLIE.STATUS,
CLIE.NOTIFNAME,
MAS.PLANNAME,
TELM.CLIENTTYPE
Valora esta pregunta


0