1000.成绩管理-查询学生的学号与姓名

时间限制: 1000 MS    内存限制: 32768 KB
提交: 135    解决: 112

题目描述

给定数据库,编写一条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;

提示

 

来源