Hola

no vi bien si ya te dieron el resultado pero puedes hacer algo asi

select distinct(anno), count(*) as total_aportantes from tabla_anno group by
anno


Si tubieras una tabla de esta forma con unos registros que variaran en año

¦----------------¦---------¦---------------
¦ aportante ¦ anno   ¦ aporte
¦----------------¦---------¦-------
¦  JUAN      ¦2010  ¦ 8
¦  CARLOS ¦2010  ¦ 8
¦  JOSE      ¦2011  ¦ 8
¦  JERY      ¦2011  ¦ 8
¦  JORGE   ¦2011  ¦ 8
¦  JEAN      ¦2012  ¦ 8
¦  JEAN      ¦2012  ¦ 8


tendrias un resultado asi

¦---------¦-------------------------¦
¦ anno ¦ total_aportantes
¦---------¦-------------------------¦
¦2010  ¦ 2
¦2011  ¦ 3
¦2012  ¦ 2


espero te sirva





El 5 de agosto de 2011 12:58, Rodrigo Gonzalez
<rjgonz...@estrads.com.ar>escribió:

> **
> On 05/08/11 14:33, Giorgio wrote:
>
> Lo que deseo es tener un total de aportes por año (desde el 2002 hasta
> 2011), estoy probando con un solo año pero mi select me muestra algo asi:deseo
> es que me muestre algo asi:
>
>  SELECT year_aporte, COUNT(*)
>   FROM tb_aporte
>  WHERE year_aporte= 2011
>    AND monto_aporte= 8
> GROUP BY year_aporte
> ORDER BY year_aporte
>
>  Resultado:
>
>   ¦ año   ¦ aporte
> ¦---------¦-------
> ¦2011  ¦ 8
> ¦2011  ¦ 8
> ¦2011  ¦ 8
>  ...etc.
>
>
>  Y lo que quiero es solo un total por ejemplo:
>
>  ¦---------¦-------------------------¦
> ¦ año   ¦ total_aportantes
> ¦---------¦-------------------------¦
> ¦2011  ¦ 6
>
>  Gracias.
>
> Quizas sea hora de irme a dormir....pero la consulta la menos para lo que
> mostras tiene que dar el resultado bien....cree una pequeña tabla aca y
> probe tu consulta por las dudas....
>
> postgres=# CREATE TABLE tb_aporte (nombre varchar(20), year_aporte int,
> monto_aporte int);
> CREATE TABLE
> postgres=# insert into tb_aporte values ('JUAN', 2011, 8), ('CARLOS', 2011,
> 8), ('JOSE', 2011, 8), ('JERY', 2011, 8), ('JORGE', 2011, 8), ('JEAN', 2011,
> 8);
> INSERT 0 6
> postgres=# SELECT year_aporte, COUNT(*)
> postgres-#   FROM tb_aporte
> postgres-#  WHERE year_aporte= 2011
> postgres-#    AND monto_aporte= 8
> postgres-# GROUP BY year_aporte
> postgres-# ORDER BY year_aporte;
>  year_aporte | count
> -------------+-------
>         2011 |     6
> (1 row)
>
> Asi que revisa si estas corriendo esa consulta porque tiene que dar
> exactamente bien
>
> Saludos
>
> Rodrigo Gonzalez
>



-- 
ISC Miguel Angel Hernandez Moreno

Responder a