SQL Server 竖向结果转换为横向

是否可以依据Room列,将ID,Name列合并为横向显示(最好可以列名依次+1),需求参考附图... 是否可以依据Room列 ,将 ID,Name 列合并为横向显示 (最好可以列名依次+1),需求参考附图 展开
 我来答
蜗牛P科技
高粉答主

2019-09-05 · 图灵的梦想,信息的时代
蜗牛P科技
采纳数:68331 获赞数:214569

向TA提问 私信TA
展开全部
SELECT t1.编号, t1.规格, t2.名称
FROM (SELECT 编号, 规格A AS 规格, 数量A FROM tab
UNION ALL
SELECT 编号, 规格B AS 规格, 数量B FROM tab
UNION ALL
SELECT 编号, 规格C AS 规格, 数量C FROM tab) t1
INNER JOIN t2
ON t1.编号 = t2.编号 AND t1.规格 = t2.规格
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
琴旧可1
2019-09-05 · TA获得超过3621个赞
知道大有可为答主
回答量:4881
采纳率:85%
帮助的人:238万
展开全部
SELECT 姓名
,'数学'=MAX(CASE 课程 WHEN '数学' THEN 分数 ELSE 0 END)
,'语文'=MAX(CASE 课程 WHEN '语文' THEN 分数 ELSE 0 END)
,'英语'=MAX(CASE 课程 WHEN '英语' THEN 分数 ELSE 0 END)
FROM TB
GROUP BY 姓名

--或者
SELECT 姓名,
,'数学'=SUM(CASE 课程 WHEN '数学' THEN 分数 ELSE 0 END)
,'语文'=SUM(CASE 课程 WHEN '语文' THEN 分数 ELSE 0 END)
,'英语'=SUM(CASE 课程 WHEN '英语' THEN 分数 ELSE 0 END)
FROM TB
GROUP BY 姓名
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式