INSERT INTO tb EXEC(@sql)

解决方案 »

  1.   

    create table 表名(name varchar(1))
    insert into tb values('a')
    insert into tb values('b')
    insert into tb values('c')declare @sql varchar(8000)
    set @sql = 'select '
    select @sql = @sql + ', max(case name when ''' + cast(name as varchar) + ''' then name end) [' + name + ']'
    from 表名
    set @sql = 'select ' + substring(@sql , 9 , len(@sql)) + 'into 表1 from 表名'
    exec(@sql) 
      

  2.   

    2005的可以直接insert tb exec()2000的需把insert 加入动态语句再执行exec
      

  3.   

    能否不用INSERT INTO  我想直接在新建的表里面写入!!
      

  4.   


    create table 表名(name varchar(1)) 
    insert into tb values('a') 
    insert into tb values('b') 
    insert into tb values('c') declare @sql varchar(8000) 
    set @sql = 'insert into 新表 select ' 
    select @sql = @sql + ', max(case name when ''' + cast(name as varchar) + ''' then name end) [' + name + ']' 
    from 表名 
    set @sql = 'select ' + substring(@sql , 9 , len(@sql)) + ' from 表名' 
    exec(@sql) 
      

  5.   


    1  INSERT INTO tb EXEC(@sql)
    2  把 into table 嵌在@sql中.
      

  6.   

    这是您昨天写的那个!!现在想把exec(@sql)的显示结果写进一张表里  写的同时建立新表  可否做到呢 INSERT INTO 好像是插入数据!!!!!
      

  7.   

    declare @sql varchar(8000) 
    set @sql = 'select ' 
    select @sql = @sql + ', max(case name when ''' + cast(name as varchar) + ''' then name end) [' + name + ']' 
    into 新表-----
    from 表名 
    set @sql = 'select ' + substring(@sql , 9 , len(@sql)) + ' from 表名' 
    exec(@sql) 
      

  8.   

    declare @sql varchar(8000) 
    set @sql = 'select ' 
    select @sql = @sql + ', max(case name when ''' + cast(name as varchar) + ''' then name end) [' + name + ']' 
    from 表名 
    set @sql = 'select ' + substring(@sql , 9 , len(@sql)) + ' into 新表 from 表名' 
    exec(@sql) 
    马虎了
      

  9.   

        insert  表名 select * from 其他表名   插入数据难道不是从表的最后一行开始插入数据吗》》我这为什么是从第一行开始插入数据的呢??