SQL Server中将varchar转换为numeric的方法

3

我的表中数据存储格式为((1000.000) + 200.000) + 1000.00

该列的数据类型为nvarchar

我希望在选择表时得到输出结果为2200.000

2个回答

1
使用动态SQL。
declare @query varchar(max) = 'select ((1000.000) + 200.000) + 1000.00'

exec(@query)

1

this this...

CREATE TABLE table3
(
    formula_id int,
    formula varchar(max)
)

INSERT INTO table3 (formula_id, formula)
VALUES
(1, '((1000.000) + 200.000) + 1000.00')

DECLARE @formula varchar(max)
SELECT @formula = formula FROM table3 WHERE formula_id = 1    
DECLARE @query varchar(max) = 'SELECT ' + @formula
EXEC(@query)

注意:最后四个查询必须同时运行,否则将不会显示结果。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接