Blijkbaar conversion_units
is een tekenreeks die waarden kan bevatten die niet kunnen worden omgezet in numeric
.
Je onmiddellijke probleem kan op deze manier worden opgelost:
SUM(NULLIF(conversion_units, '')::numeric)
maar er kunnen andere waarden zijn.
Je zou kunnen proberen om regexp te gebruiken om converteerbare strings te matchen:
SUM((CASE WHEN conversion_units ~ E'^\\d(?:\\.\\d)*$' THEN conversion_units END)::numeric)