Re: Ayuda con group by

From: Mario Burdman <mburdman(at)gmail(dot)com>
To: Fernandos Siguenza <fsigu(at)hotmail(dot)com>
Cc: Foro Postgres <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Ayuda con group by
Date: 2009-02-10 14:17:54
Message-ID: 14bba8590902100617p3c8ea5f5ra84fbd80c87dcb77@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

A simple vista, a cualquier campo al que no le estes aplicando una funcion
agregada (sum, count, avg) lo tenes que poner en el group by.
Además no estoy seguro de que puedas hacer group by mes cuando mes es el
alias.

vos decis que con esto no obtenes lo deseado?:

select extract(MONTH from asifec) as mes,asidet.asicuecod,sum(asidet.asideb)
as asideb,sum(asidet.asihab) as asihab,asideb-asihab as saldo ,cuegrutip as
grupo
FROM asicab,asidet,agencias,cuentagrupo
WHERE agencias.agecod=asicab.asiagecod
and asicab.asiagecod=asidet.asiagecod
and asicab.asidoc=asidet.asidoc
and asicab.asinum=asidet.asinum
and cuentagrupo.cuegrucod=substring(asidet.asicuecod,1,1)
and asifec<=now()
group by extract(MONTH from asifec),asidet.asicuecod,
asideb-asihab,cuegrutip
ORDER BY mes,asicuecod

Saludos

On Tue, Feb 10, 2009 at 11:06 AM, Fernandos Siguenza <fsigu(at)hotmail(dot)com>wrote:

> Amigos como estan, necesito que me ayuden tengo problemas con un select,
> quiero agrupar una consulta por mes y por cuenta contable, tal y como lo
> indico a continueacion
>
> select extract(MONTH from asifec) as
> mes,asidet.asicuecod,sum(asidet.asideb) as asideb,sum(asidet.asihab) as
> asihab,asideb-asihab as saldo ,cuegrutip as grupo
> FROM asicab,asidet,agencias,cuentagrupo
> WHERE agencias.agecod=asicab.asiagecod
> and asicab.asiagecod=asidet.asiagecod
> and asicab.asidoc=asidet.asidoc
> and asicab.asinum=asidet.asinum
> and cuentagrupo.cuegrucod=substring(asidet.asicuecod,1,1)
> and asifec<=now()
> group by mes,asidet.asicuecod
> ORDER BY mes,asicuecod
>
> Pero al ejecutar esta consulta me da el siguiente mensaje de error
> column "asidet.asideb" must appear in the GROUP BY clause or be used in an
> aggregate function
>
> Si pongo dentro del group by la columna asideb, luego me pide igual al
> asihab, y si ponto todas estas no es obtengo el resultado que deseo,
> alguien me puede ayudar a ver que estoy haciendo mal.
>
> ------------------------------
> Color coding for safety: Windows Live Hotmail alerts you to suspicious
> email. Sign up today.<http://windowslive.com/Explore/Hotmail?ocid=TXT_TAGLM_WL_hotmail_acq_safety_112008>
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fernandos Siguenza 2009-02-10 14:26:10 RE: Ayuda con group by
Previous Message Javier Chávez B. 2009-02-10 14:14:31 Re: Ayuda con group by