1、在本地mysql数据库执行一下语句
CREATE DATABASE wenqixiaojiejie;
USE wenqixiaojiejie;
CREATE TABLE student
(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '学生学号',
name VARCHAR(20) NOT NULL COMMENT '学生姓名',
student_sex TINYINT(1) NOT NULL DEFAULT 0 COMMENT "性别 1:男 0:女,默认1",
student_birthay DATETIME NOT null comment '出生日期',
class_no INT(11) NOT NULL COMMENT "所属班级",
PRIMARY KEY (`id`),
UNIQUE KEY idx_id_class_no(`id`,`class_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生表';
CREATE TABLE course
(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '课程id' ,
course_name VARCHAR(20) NOT NULL COMMENT '课程名称',
course_teacher_id INT(11) NOT NULL COMMENT '授课老师id',
PRIMARY KEY (`id`),
UNIQUE KEY idx_id_course_teacher_id(`id`,`course_teacher_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='课程表' ;
CREATE TABLE score
(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '自增id' ,
student_id INT(11) NOT NULL COMMENT '学生学号',
course_id INT(11) NOT NULL COMMENT '课程id',
degree INT(3) NOT NULL DEFAULT 0 COMMENT '成绩',
PRIMARY KEY (`id`),
UNIQUE KEY idx_student_id_course_id(`student_id`,`course_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='成绩表' ;
CREATE TABLE teacher
(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '教师id' ,
teacher_name VARCHAR(20) NOT NULL COMMENT '教师姓名',
teacher_sex TINYINT(1) NOT NULL DEFAULT 0 COMMENT "性别 1:男 0:女,默认1",
teacher_birthay DATETIME NOT null comment '出生日期',
teacher_prof VARCHAR(20) NOT NULL COMMENT '职称',
teacher_depart VARCHAR(20) NOT NULL COMMENT '所属系',
PRIMARY KEY (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='教师信息表' ;
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (1 ,'曾华' ,1 ,'1997-09-01',13);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (2 ,'匡明' ,1 ,'1995-10-02',11);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (3 ,'王丽' ,0 ,'1996-01-23',13);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (4 ,'李军' ,1 ,'1996-02-20',13);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (5 ,'王芳' ,0 ,'1995-02-10',11);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (6 ,'陆君' ,1 ,'1994-06-03',11);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (7 ,'张俊' ,0 ,'1997-09-01',13);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (8 ,'王海' ,1 ,'1995-10-02',11);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (9 ,'李思' ,0 ,'1996-01-23',13);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (10 ,'宋坤' ,1 ,'1996-02-20',13);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (11 ,'郑贺' ,1 ,'1995-02-10',11);
INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (12 ,'刘峰' ,1 ,'1994-06-03',11);
INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart)
VALUES (1,'李诚',1,'1968-12-02','副教授','计算机系');
INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart)
VALUES (2,'张旭',1,'1969-03-12','讲师','电子工程系');
INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart)
VALUES (3,'王萍',0,'1972-05-05','助教','计算机系');
INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart)
VALUES (4,'刘冰',0,'1977-08-14','助教','电子工程系');
INSERT INTO course(id,course_name,course_teacher_id) VALUES (1 ,'计算机导论',1);
INSERT INTO course(id,course_name,course_teacher_id) VALUES (2 ,'操作系统' ,2);
INSERT INTO course(id,course_name,course_teacher_id) VALUES (3 ,'数据电路' ,3);
INSERT INTO course(id,course_name,course_teacher_id) VALUES (4 ,'高等数学' ,4);
INSERT INTO score(student_id,course_id,degree) VALUES (1,1,86);
INSERT INTO score(student_id,course_id,degree) VALUES (2,1,75);
INSERT INTO score(student_id,course_id,degree) VALUES (3,1,68);
INSERT INTO score(student_id,course_id,degree) VALUES (4,1,92);
INSERT INTO score(student_id,course_id,degree) VALUES (5,1,88);
INSERT INTO score(student_id,course_id,degree) VALUES (6,1,76);
INSERT INTO score(student_id,course_id,degree) VALUES (7,1,64);
INSERT INTO score(student_id,course_id,degree) VALUES (8,1,91);
INSERT INTO score(student_id,course_id,degree) VALUES (12,1,81);
INSERT INTO score(student_id,course_id,degree) VALUES (2,2,55);
INSERT INTO score(student_id,course_id,degree) VALUES (3,2,98);
INSERT INTO score(student_id,course_id,degree) VALUES (4,2,72);
INSERT INTO score(student_id,course_id,degree) VALUES (5,2,48);
INSERT INTO score(student_id,course_id,degree) VALUES (6,2,36);
INSERT INTO score(student_id,course_id,degree) VALUES (7,2,14);
INSERT INTO score(student_id,course_id,degree) VALUES (8,2,81);
INSERT INTO score(student_id,course_id,degree) VALUES (9,2,72);
INSERT INTO score(student_id,course_id,degree) VALUES (10,2,83);
INSERT INTO score(student_id,course_id,degree) VALUES (11,2,74);
INSERT INTO score(student_id,course_id,degree) VALUES (12,2,88);
INSERT INTO score(student_id,course_id,degree) VALUES (2,3,76);
INSERT INTO score(student_id,course_id,degree) VALUES (3,3,75);
INSERT INTO score(student_id,course_id,degree) VALUES (4,3,75);
INSERT INTO score(student_id,course_id,degree) VALUES (5,3,95);
INSERT INTO score(student_id,course_id,degree) VALUES (6,3,52);
INSERT INTO score(student_id,course_id,degree) VALUES (7,3,41);
INSERT INTO score(student_id,course_id,degree) VALUES (8,3,65);
INSERT INTO score(student_id,course_id,degree) VALUES (9,3,90);
INSERT INTO score(student_id,course_id,degree) VALUES (10,3,86);
INSERT INTO score(student_id,course_id,degree) VALUES (11,3,60);
INSERT INTO score(student_id,course_id,degree) VALUES (12,3,85);
INSERT INTO score(student_id,course_id,degree) VALUES (1,4,81);
INSERT INTO score(student_id,course_id,degree) VALUES (2,4,99);
INSERT INTO score(student_id,course_id,degree) VALUES (3,4,31);
INSERT INTO score(student_id,course_id,degree) VALUES (4,4,92);
INSERT INTO score(student_id,course_id,degree) VALUES (6,4,56);
INSERT INTO score(student_id,course_id,degree) VALUES (7,4,60);
INSERT INTO score(student_id,course_id,degree) VALUES (9,4,67);
INSERT INTO score(student_id,course_id,degree) VALUES (10,4,77);
INSERT INTO score(student_id,course_id,degree) VALUES (11,4,72);
INSERT INTO score(student_id,course_id,degree) VALUES (12,4,86);
2、练习题
1、 查询student表中的所有记录的学生姓名、性别和班级号列数据
2、 查询有多个教师在同一个系的系名称
3、 查询student表的所有记录。
4、 查询score表中成绩在60到80之间的所有记录。
5、 查询score表中成绩为85,86或88的记录。
6、 查询student表中11 班或性别为“女”的同学记录。
7、 以class_no降序查询Student表的所有记录。
8、 以course_id升序、degree降序查询score表的所有记录。
9、 查询11班的学生人数。
10、查询score表中的最高分的学生学号和课程号。
11、查询2号课程的平均分。
12、查询score表中最多学生选修的课程的平均分数。
13、查询最低分大于70,最高分小于90的学生数据。
14、查询所有学生的student_id、course_id和degree列。
15、查询所有学生的student_name、course_name和Degree列。
17、查询11班所选每门课程的平均分。
19、查询选修4的课程的成绩高于60号同学成绩的所有同学的记录。
20、查询score中选学一门以上课程的同学中分数为非最高分成绩的记录。
21、查询成绩高于学号为8、课程号为3的成绩的所有记录。
22、查询和学号为10的同学同年出生的所有学生的student_id、student_name和student_birthday列。
23、查询“张旭“教师任课的学生成绩。
24、查询选修某课程的同学人数多于5人的教师姓名。
25、查询11班和13班全体学生的记录。
26、查询存在有85分以上成绩的课程course_id.
27、查询出“计算机系“教师所教课程的成绩表。
28、查询“计算机系”与“电子工程系“不同职称的教师的teacher_name和teacher_prof。
29、查询选修编号为3课程且成绩至少高于选修编号为3的同学的course_id、student_id和degree,并按degree从高到低次序排序。
30、查询选修编号为3且成绩高于选修编号为3课程的同学的course_id、student_id和Degree.
31、查询所有教师和同学的name、student_sex和student_birthday.
32、查询所有“女”教师和“女”同学的name、student_sex和student_birthday.
33、查询成绩比该课程平均成绩低的同学的成绩表。
34、查询所有任课教师的teacher_name和teacher_depart.
35 查询所有未讲课的教师的teacher_name和teacher_depart.
36、查询至少有2名男生的班号。
37、查询student表中不姓“王”的同学记录。
38、查询student表中每个学生的姓名和年龄。
39、查询student表中最大和最小的student_birthday日期值。
40、以班号和年龄从大到小的顺序查询student表中的全部记录。
41、查询“男”教师及其所上的课程。
42、查询最高分同学的course_id、student_id和degree列。
43、查询和“李军”同性别的所有同学的name.
44、查询和“李军”同性别并同班的同学name.
45、查询所有选修“计算机导论”课程的“男”同学的成绩表