Re: redondeo de numeros

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Carlos Mendez <lucas1850(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: redondeo de numeros
Date: 2008-04-23 20:23:58
Message-ID: 20080423202358.GG6572@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Carlos Mendez escribió:

> existe alguna funcion que redondea como el ejm mostrado?, de lo contrario me
> gustaria saber como puedo hacer *para que la columna anual donde se muestra
> la nota me aparesca con 2 decimales* y no solo enteros, de esa manera yo
> despues lo redondearia de acuerdo a la regla.

Sospecho que parte del problema es que esta haciendo division entera.
Prueba un cast a numeric:

> select a.id , a.paterno, a.materno, a.nombre, n.idmateria, (sum(n.nota::numeric)/3)
> as anual from notas_t2 n, alumnos_t2 a, inscripciones_t2 i where
> i.idparalelo='1S-A-2008' and n.gestion='2008' and n.gestion=i.gestion and
> i.idalumno=n.idalumno and n.idmateria='MAT09' and i.estado='1' and
> i.estado=a.estado and i.idalumno=a.id and i.idalumno not in( select
> idalumno from notas_t2 where idmateria='MAT09' and gestion='2008' and
> (idtiponota='13' OR idtiponota='12')) GROUP BY a.id,a.paterno, a.materno,
> a.nombre, n.idmateria HAVING sum( n.idtiponota )=51 order by a.paterno,
> a.materno

y luego aplicas round() como sugiere Roberto.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Manuel Lamas 2008-04-23 20:25:03 VACUUM y CLUSTER
Previous Message Roberto Andrade Fonseca 2008-04-23 20:04:24 Re: redondeo de numeros