1000.成绩管理-查询学生的学号与姓名
题目描述
给定数据库,编写一条SQL语句,要求满足以下查询内容
查询全体学生的学号(Sno)与姓名(Sname)
注意,所有题目查询字段名称(大小写随意)和顺序必须和题目给出的一致,否则判错
只能使用英文字符(如 逗号, 小于号< 叹号! 等等),否则会导致Runtime Error
Student表(学生表)
学号 Sno |
姓名 Sname |
性别 Ssex |
年龄 Sage |
所在系 Sdept |
int |
varchar |
char |
tinyint |
varchar |
201215121 |
李勇 |
男 |
20 |
CS |
201215122 |
刘晨 |
女 |
19 |
CS |
201215123 |
王敏 |
女 |
18 |
MA |
201215125 |
张立 |
男 |
19 |
IS |
201215133 |
张三 |
男 |
21 |
TE |
… |
… |
… |
… |
… |
Course表(课程表)
课程号 Cno |
课程名 Cname |
先行课 Cpno |
学分 Ccredit |
int |
varchar |
int |
tinyint |
1 |
数据库 |
5 |
4 |
2 |
数学 |
NULL |
2 |
3 |
信息系统 |
1 |
4 |
4 |
操作系统 |
6 |
3 |
5 |
数据结构 |
7 |
4 |
6 |
数据处理 |
NULL |
2 |
7 |
PASCAL语言 |
6 |
4 |
SC表(选课表)
学号 Sno |
课程号 Cno |
成绩 Grade |
int |
int |
smallint |
201215121 |
1 |
92 |
201215121 |
2 |
85 |
201215121 |
3 |
88 |
201215122 |
2 |
90 |
201215122 |
3 |
80 |
201215122 |
6 |
59 |
201215123 |
1 |
84 |
… |
… |
… |
初始化SQL语句
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
/*学生表*/
CREATE TABLE Student
(
Sno INT(9) PRIMARY KEY,
Sname VARCHAR(10),
Ssex CHAR(2),
Sage TINYINT(3),
Sdept VARCHAR(20)
);
INSERT INTO Student
VALUES (201215121, '李勇', '男', 20,
'CS'),
(201215122, '刘晨', '女', 19,
'CS'),
(201215123, '王敏', '女', 18,
'MA'),
(201215125, '张立', '男', 19,
'IS'),
(201215133, '张三', '男', 21,
'TE'),
(201215137, '赵四', '男', 23,
'TE'),
(201215139, '田二', '女', 24,
'CS'),
(201215140, '李四', '男', 21,
'CS'),
(201215141, '郑五', '女', 22,
'IS');
/*课程表*/
CREATE TABLE Course
(
Cno INT(4) PRIMARY KEY,
Cname VARCHAR(40),
Cpno INT(4),
Ccredit TINYINT(3),
FOREIGN KEY (Cpno) REFERENCES
Course (Cno)
);
INSERT INTO Course
VALUES (1, '数据库', 5,
4),
(2, '数学', NULL, 2),
(3, '信息系统', 1,
4),
(4, '操作系统', 6,
3),
(5, '数据结构', 7,
4),
(6, '数据处理', NULL, 2),
(7, 'PASCAL语言', 6,
4);
/*选课表*/
CREATE TABLE SC
(
Sno INT(9),
Cno INT(4),
Grade SMALLINT(3),
PRIMARY KEY (Sno, Cno),
/* 主码由两个属性构成,必须作为表级完整性进行定义*/
FOREIGN KEY (Sno) REFERENCES Student
(Sno),
/* 表级完整性约束条件,Sno是外码,被参照表是Student */
FOREIGN KEY (Cno) REFERENCES Course
(Cno)
/* 表级完整性约束条件,
Cno是外码,被参照表是Course*/
);
INSERT INTO SC
VALUES (201215121, 1, 92),
(201215121, 2,
85),
(201215121, 3,
88),
(201215122, 2,
90),
(201215122, 3,
80),
(201215122, 6,
59),
(201215123, 1,
84),
(201215125, 1,
60),
(201215125, 3, 90),
(201215133, 4,
87),
(201215137, 2,
79),
(201215139, 2,
80),
(201215140, 2,
81);
SET FOREIGN_KEY_CHECKS = 1;