sql存储过程的问题
---把多个表中的一个数列的值赋给另一个表的列...
create proc L_SelUserOffer
@Name varchar(20)
as
exec('
select favor=((select cast(sum(click)/10 as int) from HS_Y_Mov_2_Movie where Ins_Name='+@Name+')+(select cast(sum(click) as int) from HS_A_Article where InsertName='+@Name+' )+(select cast(sum(click) as int) from HS_LiuYan where UserName=(select ID from HS_U_User where UserName='+@Name+'))) from L_U_offer
')执行不了...求解....分不多请见谅

解决方案 »

  1.   

    什么错误?
    字符型得加上 单引号, 再试试exec('
    select favor=((select cast(sum(click)/10 as int) from HS_Y_Mov_2_Movie where Ins_Name='''+@Name+''')+(select cast(sum(click) as int) from HS_A_Article where InsertName='''+@Name+''')+(select cast(sum(click) as int) from HS_LiuYan where UserName=(select ID from HS_U_User where UserName='''+@Name+'''))) from L_U_offer
    ')
      

  2.   

    列名 'click' 无效。
    但是单个select cast(sum(click)/10 as int) from HS_Y_Mov_2_Movie 这样就没问题....
      

  3.   

    click是存在的....可能是嵌套查询不支持什么的
      

  4.   

    想把两个表的同一列(click)值合并相加到另一表中的favor的...可是不懂...哪位帮下忙啊
      

  5.   

    favor是什么类型?能直接给值吗?》