
SQL 如何查询时 横着的数据 竖着显示?? 20
姓名数学语文英语王明100100100显示成姓名科目分数王明数学100王明语文100王明英语100...
姓名 数学 语文 英语
王明 100 100 100
显示成
姓名 科目 分数
王明 数学 100
王明 语文 100
王明 英语 100 展开
王明 100 100 100
显示成
姓名 科目 分数
王明 数学 100
王明 语文 100
王明 英语 100 展开
7个回答
展开全部
看你表结构是什么样的吧,最彻底的方法是把表结构就改成 姓名,科目,分数。如果表结构是 姓名,数学,语文,英语 不能变,又一定要显示成那样,就只好用union拼一下了,比如 select 姓名,'数学' as 科目,数学 as 分数 from 表 union select 姓名,'语文' as 科目,语文 as 分数 from 表 union select 姓名,'英语' as 科目,英语 as 分数 from 表。
推荐于2018-05-09
展开全部
select 姓名,'数学' as 科目,分数 from table
union all
select 姓名,'语文' ,分数 from table
union all
select 姓名,'英语' ,分数 from table
union all
select 姓名,'语文' ,分数 from table
union all
select 姓名,'英语' ,分数 from table
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select 姓名,科目,分数 from table where 姓名='王明' and 科目='数学' and 分数='100'
union all
select 姓名,科目,分数 from table where 姓名='王明' and 科目='语文' and 分数='100'
union all
select 姓名,科目,分数 from table where 姓名='王明' and 科目='英语' and 分数='100'
这样吗?
union all
select 姓名,科目,分数 from table where 姓名='王明' and 科目='语文' and 分数='100'
union all
select 姓名,科目,分数 from table where 姓名='王明' and 科目='英语' and 分数='100'
这样吗?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select*from tb pivot(max(分数)for科目in(数学,语文,物理))a
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
行列转换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询