当前位置: 代码迷 >> Sql Server >> SQLSERVER解析计算公式并代值计算,该如何处理
  详细解决方案

SQLSERVER解析计算公式并代值计算,该如何处理

热度:65   发布时间:2016-04-24 09:32:31.0
SQLSERVER解析计算公式并代值计算
现在有这样一个需求:

一个计算公式
YLFW_YLFY_016=YLFW_YLFY_014*100/(YLFW_YLFY_014+YLFW_YLFY_015)

需要动态的把以上计算公式解析成3个基础的代码YLFW_YLFY_014、YLFW_YLFY_015、YLFW_YLFY_015

每个基础的代码,例如YLFW_YLFY_014需要关联一张字典表动态生成一个sql语句,其中可能有sum,count,group by语句等到一个结果集如下:
YLFW_YLFY_014,时间维度,机构维度,value

剩下的2个指标同理

最后要做的是将这3个基础指标的值按照计算公式进行计算

目前我才用的方式就是拼接sql,感觉效率很低,有没有什么好的方法?


------解决思路----------------------
建个临时表: #temp(基础代码,YLFW_YLFY_014,YLFW_YLFY_015,YLFW_YLFY_016)
一次性把所有基础代码的YLFW_YLFY_014,YLFW_YLFY_015都统计出来。
然后用动态语句执行公式
UPDAT #temp SET YLFW_YLFY_016=YLFW_YLFY_014*100/(YLFW_YLFY_014+YLFW_YLFY_015)


不用拆分公式、不用循环每个基础代码。
  相关解决方案