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:31:54
Message-ID: 14bba8590902100631r36f18c65iba84f746e50983a6@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

lo decis por la resta? perdon, no la habia visto! :( , deberias hacer:
sum(asidet.asideb) - sum(asidet.asihab) as saldo

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

> Correcto gracias por responder, lo que necesito es tengo la tabla asidet,
> y asicab, y quiero sacar por mes cual es el saldo de cada cuenta contable,
> algo asi
> mes, cuenta,debe,haber,saldo,grupo
> 1 1 13 3 10 A
> 1 2 14 6 8 P
> 2 1 6 6 0 A
>
> entonces poniendo todo lo que obliga el postres osea el group by
> mes,asidet.asicuecod,,asideb,asihab,cuegrutip
> me sale algo como esto
> 1 1 10 2 8 A
> 1 1 3 1 2 A
> 1 2 14 6 8 P
> 2 1 6 6 0 A
>
> y por eso digo que si pongo todas las opciones de agrupacion no tengo lo
> que deseo.
>
> Saludos
>
> ------------------------------
> Date: Tue, 10 Feb 2009 11:17:54 -0300
> Subject: Re: [pgsql-es-ayuda] Ayuda con group by
> From: mburdman(at)gmail(dot)com
> To: fsigu(at)hotmail(dot)com
> CC: pgsql-es-ayuda(at)postgresql(dot)org
>
>
> 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>
>
>
>
> ------------------------------
> 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

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message sTyler 2009-02-10 14:41:27 Obtener un numero unico de operacion
Previous Message Fernandos Siguenza 2009-02-10 14:26:10 RE: Ayuda con group by