【求助】 怎么能查询到一个表部分列的全部数据 今天从数据库SqlServer2005 导出数据生成excel的时候碰到的问题:
提示说这个表列太多了,所以导出发生了错误。
后来上网搜了一下用这个语句 select name from syscolumns where id = object_id('table');得出表中有330多列。
declare @columns varchar(50),@sql varchar(max)
set @columns=''
select @columns=@columns + ',' + a.name
from sys.columns a
join sys.tables b
on a.object_id=b.object_id
where b.name='TableName'
and a.column_id<100 --此处分列
set @columns=STUFF(@columns, 1, 1, '')
set @sql='select '+@columns+' from TableName'
select @sql
exec(@sql)