请问计算问题 Declare STR_TMP nvarchar(500)SELECT STR_TMP='(123+321*156+(321-213)*101)/(123-23)'问:如何获取STR_TMP 代表的计算结果?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Declare @STR_TMP nvarchar(500)SELECT @STR_TMP='(123+321*156+(321-213)*101)/(123-23)'SELECT @STR_TMP----------(123+321*156+(321-213)*101)/(123-23) 如果要显示公式计算出的数字结果,还需要cast转换一下Declare @STR_TMP nvarchar(500)SELECT @STR_TMP=cast((123+321*156+(321-213)*101)/(123-23) as nvarchar(500))SELECT @STR_TMP--------661 TO:rookie_one 需要得到计算结果! 因为@STR_TMP 声明为字符型所以需要把一系列数字计算之后的整体 来进行转化现实 Declare @STR_TMP nvarchar(500)SELECT @STR_TMP='(123+321*156+(321-213)*101)/(123-23)'exec('select result='+@STR_TMP)--resultresult ----------- 611 "如果要显示公式计算出的数字结果,还需要cast转换一下Declare @STR_TMP nvarchar(500)SELECT @STR_TMP=cast((123+321*156+(321-213)*101)/(123-23) as nvarchar(500))SELECT @STR_TMP--------661"SELECT @STR_TMP=cast((123+321*156+(321-213)*101)/(123-23) as nvarchar(500))这里有问题,@STR_TMP本身是个字符串,是个动态的计算式,我要获取的是这个字符串里所包含的计算式的结果。 Declare @STR_TMP nvarchar(500)SELECT @STR_TMP='select (123+321*156+(321-213)*101)/(123-23)'exec (@STR_TMP)----------661 还有一个问题,我如何获取exec (@STR_TMP) 的结果?谢谢! select * from lspzk1drop table tDeclare @STR_TMP nvarchar(500)SELECT @STR_TMP='create table t(a int) insert t values ((123+321*156+(321-213)*101)/(123-23)) 'exec (@STR_TMP)select a from t--或者再声明一个变量select @变量名=a from t 再利用此变量---a661 sql语句 求SQL语句 如何找出两个表的差异 sql查询生日问题。。在线等。。急++++++++++++++++++++++++++++++++++++ 求助SQL书籍 请教一个关于SQL SERVER 2005的进程占用不高的问题。 在WIN2K中ODBC连接出借? 关于数据库设计的问题! select子查询的问题(在线等候) 关于微软SQL2005使用时出现的异常,不知是不是SQL2005BUG? 关于数据库日志的删除对数据库恢复有影响吗? 好久没用SQL了,一个简单的问题,大家来看看
SELECT @STR_TMP='(123+321*156+(321-213)*101)/(123-23)'
SELECT @STR_TMP----------
(123+321*156+(321-213)*101)/(123-23)
SELECT @STR_TMP=cast((123+321*156+(321-213)*101)/(123-23) as nvarchar(500))
SELECT @STR_TMP--------661
所以需要把一系列数字计算之后的整体 来进行转化现实
SELECT @STR_TMP='(123+321*156+(321-213)*101)/(123-23)'
exec('select result='+@STR_TMP)--result
result
-----------
611
SELECT @STR_TMP=cast((123+321*156+(321-213)*101)/(123-23) as nvarchar(500))
SELECT @STR_TMP--------661
"
SELECT @STR_TMP=cast((123+321*156+(321-213)*101)/(123-23) as nvarchar(500))
这里有问题,@STR_TMP本身是个字符串,是个动态的计算式,我要获取的是这个字符串里所包含的计算式的结果。
SELECT @STR_TMP='select (123+321*156+(321-213)*101)/(123-23)'
exec (@STR_TMP)----------
661
drop table t
Declare @STR_TMP nvarchar(500)
SELECT @STR_TMP='create table t(a int) insert t values ((123+321*156+(321-213)*101)/(123-23)) '
exec (@STR_TMP)
select a from t--或者再声明一个变量select @变量名=a from t 再利用此变量---
a661