行列转换问题

MrYangkang MrYangkang 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
create table tb(姓名 varchar(10),课程 varchar(10),分数 int)
insert into tb values('张三','语文',74)
insert into tb values('张三','数学',83)
insert into tb values('张三','物理',93)
insert into tb values('李四','语文',74)
insert into tb values('李四','数学',84)
insert into tb values('李四','物理',94)
go
select * from tb
go

select m.*,n.总分,n.平均分
from
(
select * from tb pivot(max(分数)for 课程in(语文,数学,物理))a
)m,
(
select姓名,sum(分数)总分,cast(avg(分数*1.0)as decimal(18,2))平均分
from tb group by姓名
)n where m.姓名=n.姓名
--sql server 2005 执行会报错,报错提示
消息 102,级别 15,状态 1,第 6 行
'(' 附近有语法错误。
,这是什么情况
...全文
评论 12
收藏 已收藏
分享
返回顶部
MrYangkang
MS-SQL Server 34,876 成员 254,635 内容