SQL Server:如何在字符串中进行数学计算?

时间:2012-04-13 14:45:10

标签: sql-server-2008

我有一个应用程序,允许在将输入数据写入表之前对输入数据进行计算。

无法在C#中完成所有计算,所有计算都必须在T-SQL中完成。

应用程序根据用户输入构建一个带有可能嵌套计算的insert语句。

一个样本是一个除以10的整数,然后转换为varchar

 CAST(( ' ( CAST( 6828 AS BIGINT)) /10' ) AS NVARCHAR(MAX)) ,

这是基于用户界面输入构建的更大INSERT语句的一部分。

我如何首先执行内部( CAST( 6828 AS BIGINT)) /10

1 个答案:

答案 0 :(得分:1)

您可以使用sp_executesql执行整个字符串。例如:

EXEC sp_executesql N'SELECT CAST( CAST( 6828 AS BIGINT)) /10 AS NVARCHAR(MAX))';

See more here.