PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

La divisione degli interi restituisce 0

Dovresti lanciare prima di dividere, ma ti mancava anche una sottoquery per ottenere il conteggio totale dal tavolo. Ecco l'esempio.

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;