Somar duas strings

Bom dia!

Tenho uma tabela que contém uma coluna com valores String (ex: OK - R$ 2.500) e preciso somar esses valores da coluna, até ai eu sei fazer se a coluna fosse numérica. Como faço pra pegar somente o valor numérico dessa coluna?

Qual banco de dados está usando? As possibilidades podem depender disso.

Uma solução “genérica” seria criar uma função que faz isso, e usá-la para extrair o valor e retorná-lo como número. Mas vai depender se seu banco suporta.

PS: no longo prazo, considere adicionar uma coluna numérica pra esse valor. Armazenar valor como String não foi uma boa ideia.

Abraço.

Faço integração com o mainfraime, eles determinaram que deveria ser uma string.
Eu só faço a chamada do serviço, por isso não consigo adicionar colunas.

"Uma solução “genérica” seria criar uma função que faz isso, e usá-la para extrair o valor e retorná-lo como número."
Consegue me dar um exemplo?

Muito obrigada.

Mas você vai fazer isso no servidor de banco de dados (ex: usando SQL) ou vai fazer isso na aplicação? Se for fazer na aplicação, qual linguagem está usando?

Por exemplo, em Java, vocẽ pode usar um replaceAll na String:

str = str.replaceAll("[^\.0123456789]","");

Fonte: https://stackoverflow.com/questions/4030928/extract-digits-from-a-string-in-java

Abraço.

Vou fazer na aplicação. A linguagem é java (web).
Eu estou fazendo um serviço que chama o banco de dados (mainfraime - cobol).