Odpowiedź zależy od aktualnego typu danych kolumny salary . Kluczową kwestią jest to, że round() w Postgresie nie zezwala na float s (tylko numeric typy są obsługiwane).
Jeśli masz do czynienia z numeric datatype, następnie możesz najpierw round() , a następnie rzutuj na float :
round(avg(salary), 2)::float
Jeśli masz do czynienia z float kolumna, wtedy musisz rzucić wynik funkcji agregującej przed użyciem round() na nim:
round(avg(salary)::numeric, 2)::float