您的位置:首页 > 数据库

SQL动态获取列名进行查询

2010-10-31 19:04 330 查看
--SQL 2008
drop table T
--建表
create table T
(   s1  char(10),
s2 char(10),
s3 char(10),
s4  char(10),
s5 char(10),
kkk char(10)
)
--测试数据
insert into T
select 1,2,3,4,5,6

--以下脚本查询s开头的列
declare @c varchar(500)=''
declare @sql varchar(2000)=''
select  @c= isnull(','+c.name ,'')+@c   from sys.columns  c join sys.objects o
on c.object_id=o.object_id
and o.name='T' where c.name  like 's%'
select @sql =stuff(@c,1,1,'') from T
exec ('select '+@sql+' from T')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: