exec ('select * from '[email protected]_1+'')

解决方案 »

  1.   

    不需要游标declare @n varchar(10)
    declare @an varchar(10)
    declare @sql varchar(1000)set @n=1while @n<N  --这里N为你的用户的个数
    begin
     set @an='a'+@n
     set @sql='select * from '+ @a+'.table_1
     exec (@sql)
    end
      

  2.   

    用动态语句,exec('select * from '+@tablename)
      

  3.   

    exec ('select * from '+@opid+'.table_1')
      

  4.   

    有点小错误,呵呵declare @n varchar(10)
    declare @an varchar(10)
    declare @sql varchar(1000)set @n=1while @n<10  --这里N为你的用户的个数
    begin
     set @an='a'+@n
     set @sql='select * from '+ @an+'.table_1'
     exec (@sql)set @n=@n+1
    end
      

  5.   

    还有一个问题如果是下列语句
    select * from a1.table_1 where bm='11' and date between '2004-01-01' and '2004-01-31'按上面的方法应怎么写?