如何替代的问题,把公式里的代码替换成实际值,请问如何写SQL语句,谢谢!
有一个表   taskname    
 有几个字段如下: 
 taskid         int 
 task      decimal(15,2)         任务 
 assess   decimal(15,2)      完成 
 form         varchar(50)         计算工式 
 具体数据示例如下: 
 1               12      15               A/T+1 
 2                  13      10            A*T-3     
 A代表   assess               T代表task    
 现在想根据公式值,得到相应的分值 
 taskid      task         assess                                          应得到: 
 1                  12                        15               A/T+1                  2.25                            
 2                  10                        34               A*T-3                  0.4   
 如何写SQL语句?   
 ALTER               FUNCTION   deptaccess(@A   decimal(15,2),@P   decimal(15,2),@taskid   int) 
 returns   varchar(100) 
 as 
 begin 
                declare   @ret   varchar(100) 
                set   @ret=0 
                select   @ret=replace(replace(formula, 'A '   ,@A   ), 'P ',@P)      from   as_taskname   where   taskid=@taskid   order   by   dept_kind   desc 
                return   @ret 
 end   
 写了这个函数,返回的是字符串,把计算过程返回了,如何得到计算结果呢?   
 谢谢!     
------解决方案--------------------2005还是2000
------解决方案--------------------declare @temp table 
 ( 
   A1 int, 
   A2 int, 
   A3 int, 
   formula varchar(30) 
 )   
 insert into @temp values(1,2,3, 'A1+A2+A3 ')  
 insert into @temp values(4,2,3, 'A1+A2-A3 ')  
 insert into @temp values(1,4,3, 'A1-A2+A3 ')  
 insert into @temp values(1,7,3, 'A1+A2+A3 ')  
 insert into @temp values(1,2,6, 'A1-A2-A3 ')  
 insert into @temp values(1,8,3, 'A1+A2+A3 ')    
 create table #  
 ( 
   A1 int, 
   A2 int, 
   A3 int, 
   formula varchar(30), 
   value int 
 )   
 insert #(a1,a2,a3,formula) 
 select * from @temp   
 declare @sql varchar(8000) 
 set @sql= ' ' 
 select @sql=@sql+ ' when  ' ' '+formula+ ' ' ' then  '+formula+ '  '  
 from @temp 
 group by formula   
 exec( 'update # set value=case formula  '+@sql+ ' end ') 
 select a1,a2,a3,value,formula  --- formula只是为了检查结果 
 from #   
 drop table #   
 /* 
 a1	a2	a3	value	formula 
 ------------------------------------------------ 
 1	2	3	6	A1+A2+A3 
 4	2	3	3	A1+A2-A3 
 1	4	3	0	A1-A2+A3 
 1	7	3	11	A1+A2+A3 
 1	2	6	-7	A1-A2-A3 
 1	8	3	12	A1+A2+A3 
 */