日期:2014-05-18  浏览次数:20603 次

求高手指点一SQL处理方法﹐非常感谢﹗
我现有一表A﹐内有字段Code,Num1,Num2,Num3…Num12等等﹐字段Code为物品代码﹐字段Num1到Num12分别代表1-12月份买进该物品的数量(假定物品初始数量为0)﹐我现想写这样一个函数GetNum(@month int,@Code varchar(18)),希望传入任一Code和月份时﹐能自动统计出并返回到该月份止物品的数量﹐简单说﹕如@month=1,返回值@Ret= Num1;如@month=3,返回值@Ret= Num1+Num2+Num3; 如@month=5,返回值@Ret= Num1+Num2+Num3+Num4+Num5…
呵﹐不知道我说明白了没有。
我想了很久也没想到怎么去写。还请各位高手指点迷津,谢谢了﹗


------解决方案--------------------
函数中不能用动态SQL语句,只能用if else 或case when 判断了。

------解决方案--------------------
如楼上所说:
函数中不能用动态SQL语句,只能用if else 或case when 判断了。 

还好最多12个,用case when判断.

------解决方案--------------------
也可以写丰存储过程,如果不是在查询语句里用的话.