SQL行转列
declare @Testtable table(FType varchar(100),FName varchar(100))
insert @Testtable select '学历','博士'
insert @Testtable select '学历','学士'
insert @Testtable select '学历','硕士'
insert @Testtable select '证件类型','军官证'
insert @Testtable select '证件类型','身份证'
insert @Testtable select '证件类型','其他'
select * from @Testtable
得到的结果如下:
如果我们想把所有FType为‘学历’的 FName 放一行,FType为‘证件类型’的 FName 放一行
可以试一下这样写:
select t2.FType,left(FName,len(FName)-1) FName from
(
select FType ,
(select FName+',' from @Testtable where FType=t1.FType for xml path('')) FName
from @Testtable t1
group by FType
) t2
得到的结果如下:
posted on 2009-12-08 21:05 tigerhuolh 阅读(136) 评论(0) 编辑 收藏 举报