sql >> Base de Datos >  >> RDS >> PostgreSQL

La división de enteros devuelve 0

Debería emitir antes de dividir, pero también le faltaba una subconsulta para obtener el recuento total de la tabla. Aquí está la muestra.

select 
  random_int,
  count(random_int) as Count,
  cast(count(random_int) as decimal(7,2)) / cast((select count(random_int) from test) as decimal(7,2)) as Percent
from test
group by random_int
order by random_int;