
reemplazar valores en formula y converir a numero
Publicado por elvis (9 intervenciones) el 05/04/2010 18:20:34
Saludos a todos y todas.
Tengo una tabla con el campo "formula" donde guarda formulas como las siguientes:
SA*0.00056
((SA*0.003)/12)*1.13
SA*0.00031
"SA" es un valor q debo reemplazar en la formula, para ello estoy usando:
DECLARE @myval decimal (18, 5)
SET @myval = 193.57
select replace(formula, 'SA', @myval) from taba_formulas
Hasta aqui funciona y me da el siguiente resultado:
193.57000*0.00056
((193.57000*0.003)/12)*1.13
193.57000*0.00031
El problema es que me parece q esto aun sigue como texto, como lo puedo convertir en numero, de manera q se calcule la formula. (obtener el resultado de la formula)
He utilizado:
select CONVERT( decimal (18, 5) , replace(formula, 'SA', @myval) ) from tabla.
select cast(replace(formula, 'SA', @myval) as decimal(18,5) ) from tabla
Pero me da: Error al convertir tipo de varchar a numeric, que hago?
Gracias.
Tengo una tabla con el campo "formula" donde guarda formulas como las siguientes:
SA*0.00056
((SA*0.003)/12)*1.13
SA*0.00031
"SA" es un valor q debo reemplazar en la formula, para ello estoy usando:
DECLARE @myval decimal (18, 5)
SET @myval = 193.57
select replace(formula, 'SA', @myval) from taba_formulas
Hasta aqui funciona y me da el siguiente resultado:
193.57000*0.00056
((193.57000*0.003)/12)*1.13
193.57000*0.00031
El problema es que me parece q esto aun sigue como texto, como lo puedo convertir en numero, de manera q se calcule la formula. (obtener el resultado de la formula)
He utilizado:
select CONVERT( decimal (18, 5) , replace(formula, 'SA', @myval) ) from tabla.
select cast(replace(formula, 'SA', @myval) as decimal(18,5) ) from tabla
Pero me da: Error al convertir tipo de varchar a numeric, que hago?
Gracias.
Valora esta pregunta


0