oracle中各种join以及行转列的学习

本文介绍了一个学生成绩管理系统的创建过程,包括数据库设计、数据插入及计算每个学生的平均成绩。

建表如下:

create table student(

       id int,
       name varchar2(2 char)
);
create table score(
       stuid int,
       coureid int,
       score int
);
create table course(
       id int,
       name varchar2(2 char)

);

alter table student modify (name varchar2(4 char));

alter table course modify (name varchar2(4 char));

insert into student values(1,'张三');
insert into student values(2,'李四');
insert into student values(3,'王五');
insert into student values(4,'张三');


insert into course values(1,'语文');
insert into course values(2,'数学');
insert into course values(3,'英语');


insert into SCORE (STUID, COUREID, SCORE) values (1, 1, 100);
insert into SCORE (STUID, COUREID, SCORE) values (1, 2, 40);
insert into SCORE (STUID, COUREID, SCORE) values (1, 3, 50);
insert into SCORE (STUID, COUREID, SCORE) values (2, 1, 90);
insert into SCORE (STUID, COUREID, SCORE) values (2, 2, 80);
insert into SCORE (STUID, COUREID, SCORE) values (3, 1, 60);
insert into SCORE (STUID, COUREID, SCORE) values (3, 3, 60);


select  s.stuid,s2.name,avg(score) from score s,student s2 where s.stuid=s2.id group by s.stuid,s2.name order by s.stuid --每个学生的平均成绩。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值