先来测试一下你的基础吧,大佬。
Question
- 建立一个“学生”表tb_Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。其中学号不能为空,值是唯一的,并且姓名取值也唯一。
- 向tb_Student表增加“联系电话”Sphone 列,其数据类型为字符型。
- 建立一个“课程”表tb_Course,它由课程号Cno、课程名Cname、先修课Cpno、学分CCredit四个属性组成,其中先修课的取值参照课程号的取值。
- 建立一个“学生选课”表:tb_SC,它由学号Sno、课程号Cno、成绩Grade三个属性组成。
- 分别查询学生表和学生修课表中的全部数据。
- 查询计算机系(cs)的学生的姓名、年龄。
- 查询选修了01号课程的学生的学号和成绩
- 查询成绩在70到80分之间的学生的学号、课程号和成绩。
- 统计每个系的学生人数。
- 查询修了02号课程的所有学生的平均成绩。
Answer
one:.
CREATE TABLE tb_Student
( Sno CHAR(11) NOT NULL UNIQUE,
Sname CHAR(20) UNIQUE,
Ssex CHAR(2) ,
Sage INT,
Sdept CHAR(15));
two:
ALTER TABLE tb_Student ADD Sphone CHAR(10);
three:
CREATE TABLE tb_Course(
Cno CHAR(5),
Cname CHAR(20),
Cpno CHAR(5),
CCredit SMALLINT,
FOREIGN KEY (Cpno) REFERENCES tb_Course(Cno));
表级完整性约束,Cpno的取值参照被参照关系tb_Course中Cno的值
four:
CREATE TABLE tb_SC(
Sno CHAR(5),
Cno CHAR(5),
Grade INT,
FOREIGN KEY (Sno) REFERENCES tb_Student(Sno),
FOREIGN KEY (Cno) REFERENCES tb_Course(Cno),
PRIMARY KEY (Sno, Cno));
five:
select * from tb_Student;
select * from tb_SC;
six:
select Sname, Sage from tb_Student where Sdept = 'cs ';
seven:
select Sno, Grade from tb_SC where Cno = '01';
eight:
select Sno, Cno, Grade from tb_SC where Grade between 70 and 80;
nine:
select Sdept,count(*) 学生人数 from tb_Student group by Sdept;
ten:
select avg(Grade) 平均成绩 from tb_SC where Cno = '02';
over…