set @sql='select '+ @resultTable+'=resultTable from '+@searchTable +' where searchName=+''@searchname+'''我希望将查询结果赋值给@resultTable,但是折腾了一天还是没办法实现,求各位大侠帮忙!

解决方案 »

  1.   

    @@resultTable ,全局变量试试
      

  2.   

    declare @sql   varchar(1000)
    ,@resultTable  varchar(100)
    ,@searchTable  varchar(100)
    ,@searchname   varchar(100)set @sql='select '+ @resultTable+
    '=resultTable from '+@searchTable +' where searchName= '+@searchname是这样的吗?
      

  3.   

    楼主,没用过变量!但我测试了下这样可以!用的Oracle,主键id,set后面应该是只能唯一的!
    update  "table" set "description"=(select "description" from "table" where "id"='111') where "id"='222'
      

  4.   

    DECLARE @sql NVARCHAR(4000),@resultTable nvarchar(100),@searchname nvarchar(100)SET @searchname='AAA'  
    set @sql='select  @resultTable=resultTable from '+@searchTable +' where searchName=@searchname'
    EXEC sp_executesql @sql,N'@resultTable nvarchar(100) output,@searchname varchar(50)',@resultTable OUTPUT,@searchnameSELECT @resultTable
      

  5.   

    变量传参尝试用sp_executesql实现