La réponse dépend du type de données réel de la colonne salary
. Le point clé est que round()
dans Postgres n'autorise pas float
s (uniquement numeric
sont pris en charge).
Si vous avez affaire à un numeric
type de données, alors vous pouvez d'abord round()
, puis transtypé en float
:
round(avg(salary), 2)::float
Si vous avez affaire à un float
colonne, alors vous devrez caster le résultat de la fonction d'agrégation avant d'utiliser round()
dessus :
round(avg(salary)::numeric, 2)::float