首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

select * 除某列以外

2013-01-28 
select* 除某列之外table1有a1,a2,a3……a50共50个列如何查询除a25之外的所有列??[解决办法]declare @sql va

select * 除某列之外
table1有a1,a2,a3……a50共50个列

如何查询除a25之外的所有列??
[解决办法]


declare @sql varchar(4000)
select @sql=isnull(@sql,'')+','+name from sys.columns 
where object_id in (select object_id from sys.tables where name ='table1') and name !='a25'
set @sql=STUFF(@sql,1,1,'')
exec ('select ' + @sql+' from table1')


这样试试
[解决办法]
如果需要一直读取这样的一个表格,那么建立一个view好了。

至于需要排除的列,你可以表格右键,选取1000行,让数据库自动生成脚本,你把不需要的列剔出就行。我都是这么干的,:)
[解决办法]
使用動態語句。
Declare @sql nvarchar(max)

Select @sql=isnull(@sql+',','')+quotename(name) From sys.syscolumns
Where id=object_id('table1')
   And name Not in('a25')

Exec ('Select '+@sql+' From table1')

热点排行