Apparentemente conversion_units
è una stringa che può contenere valori non convertibili in numeric
.
Il tuo problema immediato può essere risolto in questo modo:
SUM(NULLIF(conversion_units, '')::numeric)
ma possono esserci altri valori.
Potresti provare a utilizzare regexp per abbinare le stringhe convertibili:
SUM((CASE WHEN conversion_units ~ E'^\\d(?:\\.\\d)*$' THEN conversion_units END)::numeric)