Svaret beror på den faktiska datatypen för kolumnen salary . Nyckelpunkten är att round() i Postgres tillåter inte float s (endast numeric typer stöds).
Om du har att göra med en numeric datatype, då kan du först round() , kasta sedan till float :
round(avg(salary), 2)::float
Om du har att göra med en float kolumn, då skulle du behöva casta resultatet av aggregatfunktionen innan du använder round() på den:
round(avg(salary)::numeric, 2)::float