2 wuronghong wuronghong 于 2013.09.06 13:48 提问

sql列转行,求sql大神帮忙解决。

如题
姓名 部门 题目ID 题目答案
A 编辑部 1 tt
A 编辑部 2 yy
A 编辑部 3 hh
B 测试部 1 tt
B 测试部 3 cc

我想要这样的结果
姓名 部门 第一题 第二题 第三题 ...等
A 编辑部 tt yy hh
B 测试部 tt NULL CC

3个回答

flyed2008
flyed2008   2013.09.06 18:23

你的题目只有1,2,3还是不确定呢

fanxuewen
fanxuewen   2013.09.09 16:25

SELECT distinct 姓名 ,部门 ,LEFT(UserList,LEN(UserList)-1) as list FROM (
SELECT 姓名 ,部门 ,
(SELECT 题目答案+',' FROM ZN_Area_City WHERE 题目ID =A.题目ID FOR XML PATH('')) AS UserList
FROM table A
GROUP BY 题目答案, 题目ID
)temp

shendixiong
shendixiong   2013.09.17 17:33

可以看下面的连接。要求跟你差不多
http://shendixiong.iteye.com/admin/blogs/1943158
列转行

Csdn user default icon
上传中...
上传图片
插入图片