PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

A divisão de inteiros retorna 0


Você deve lançar antes de dividir, mas também estava faltando uma subconsulta para obter a contagem total da tabela. Aqui está a amostra.
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;