Prawdopodobnie lepiej będzie, jeśli użyjesz niejawnej konwersji MySQL:
select sum(trim(replace(col, '$', '')) + 0.0)
Ciche nawrócenie będzie obejmowało centy. Ponadto znaki nienumeryczne występujące po liczbie nie spowodują błędu. trim()
usunie wiodące spacje, które mogą również wpłynąć na konwersję.