展开全部
--楼主这个是典型的行转列知识点
--有两个方法 不用排序的 group by 就隐含了排序功能 如果楼主记不住decode函数 可以用case
--when 写法和sql server一样 祝楼主学习进步 希望采纳
--方法一:
select name,sum(decode(course, '语文', score, 0)) 语文,
sum(decode(course, '数学', score, 0)) 数学
from t group by name ;
--方法二:
select name,sum(case when course='语文' then score else 0 end) as 语文,
sum(case when course='数学' then score else 0 end) as 数学
from t group by name ;
--有两个方法 不用排序的 group by 就隐含了排序功能 如果楼主记不住decode函数 可以用case
--when 写法和sql server一样 祝楼主学习进步 希望采纳
--方法一:
select name,sum(decode(course, '语文', score, 0)) 语文,
sum(decode(course, '数学', score, 0)) 数学
from t group by name ;
--方法二:
select name,sum(case when course='语文' then score else 0 end) as 语文,
sum(case when course='数学' then score else 0 end) as 数学
from t group by name ;
今至电子科技有限公司
2024-08-23 广告
2024-08-23 广告
数据库备份是确保数据安全与业务连续性的关键环节。我们上海今至电子科技有限公司高度重视数据保护,定期执行全面的数据库备份策略。这包括使用先进工具和技术,对关键业务数据进行自动化备份,并存储在安全可靠的外部存储介质或云端。通过定期验证备份的完整...
点击进入详情页
本回答由今至电子科技有限公司提供
展开全部
create table TEST
(
NAME VARCHAR2(20),
COURSE VARCHAR2(20),
SCORE NUMBER
);
INSERT INTO TEST VALUES('张三','语文',1);
INSERT INTO TEST VALUES('张三','数学,2);
INSERT INTO TEST VALUES('李四','语文',3);
INSERT INTO TEST VALUES('李四','数学,4);
COMMIT;
select NAME,
sum(decode(course, '语文', SCORE)) YW,
SUM(DECODE(course, '数学', SCORE)) SX
from TEST GROUP BY NAME ORDER BY 1
以上是测试demo,其实oracle的行专列、去重、分析查询等等这些常用且经典的SQL网上到处都是,你遇到问题首先应该自己先去网上找找,多动手写一写,这里只是建议。
(
NAME VARCHAR2(20),
COURSE VARCHAR2(20),
SCORE NUMBER
);
INSERT INTO TEST VALUES('张三','语文',1);
INSERT INTO TEST VALUES('张三','数学,2);
INSERT INTO TEST VALUES('李四','语文',3);
INSERT INTO TEST VALUES('李四','数学,4);
COMMIT;
select NAME,
sum(decode(course, '语文', SCORE)) YW,
SUM(DECODE(course, '数学', SCORE)) SX
from TEST GROUP BY NAME ORDER BY 1
以上是测试demo,其实oracle的行专列、去重、分析查询等等这些常用且经典的SQL网上到处都是,你遇到问题首先应该自己先去网上找找,多动手写一写,这里只是建议。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select name,
sum(decode(course, '语文', score, 0)) 语文,
sum(decode(course, '数学', score, 0)) 数学
from t
group by name
order by name desc;
sum(decode(course, '语文', score, 0)) 语文,
sum(decode(course, '数学', score, 0)) 数学
from t
group by name
order by name desc;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询