From: | Nahum Castro <nahumcastro(at)gmail(dot)com> |
---|---|
To: | Kernel <jucabapa(at)gmail(dot)com> |
Cc: | Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Consulta recursiva |
Date: | 2016-10-20 17:01:41 |
Message-ID: | CABqArLjpdnjAHZjAT+A6T3QPJc10CKKfvhsX153hx-FisW8stg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Tal vez
select grupo, sum((coalesce(signo,'')||importe)::numeric) as total from
pruebas group by grupo;
grupo | total
--------------+-------
04 |
05 | 1000
02 | 50
03 | -1
01 | 200
Saludos
El 20 de octubre de 2016, 11:26, Kernel<jucabapa(at)gmail(dot)com> escribió:
>
> Hola,
> no se si postgres permite una consultas recursivas.
>
> La tabla contiene un grupo, que contiene cuentas con un importe que suma o
> resta, asu vez un grupo puede contener otro
>
>
> necesito sacar los totales por grupo, por ejemplo
> el grupo 02 tendria un valor de 250 , 200 del grupo 01 + las dos cuentas
> del 20 y 30
>
>
>
> CREATE TABLE pruebas (
> grupo character(12) NOT NULL,
> clase character(1) NOT NULL, (puede tener el valor C o G)
> cuenta character(12) NOT NULL, ( Contiene una cuenta o un grupo)
> signo character(1),
> importe integer
> );
>
>
> grupo|clase|cuenta|signo|importe
> 02 |G|01 ||
> 03 |G|02 ||
> 04 |G|02 ||
> 05 |G|04 ||
> 05 |G|01 |-|
> 01 |C|43001 |-|100
> 01 |C|43002 ||300
> 02 |C|70000 ||20
> 02 |C|70001 ||30
> 03 |C|60000 ||600
> 03 |C|60001 |-|601
> 05 |C|2000 ||1000
> 04 |G|03 |-|
>
> Gracias
>
> -
> Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org
> )
> Para cambiar tu suscripción:
> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>
>
--
*Nahum Castro González*
Blvd. Perdigón 214, Brisas del Lago.
CP 37207
León, Guanajuato, México
Tel (477)1950304
Cel (477)1274694
From | Date | Subject | |
---|---|---|---|
Next Message | Nahum Castro | 2016-10-20 17:14:44 | OT? plpython2u |
Previous Message | Kernel | 2016-10-20 16:26:01 | Consulta recursiva |