当前位置: 首页 > 后端技术 > PHP

经典MySQL查询练习拆解思路(一)

时间:2023-03-29 13:43:53 PHP

今天工作不忙,心血来潮找了几个SQL语句练习做。做了之后发现基本功还是不扎实。网上找的习题只有答案,没有办法解决问题,所以写了这篇文章来整理一下问题。过程中,请多多指教。表名及字段-1.学生表Student(s_id,s_name,s_birth,s_sex)-学号,学名,出生日期,学生性别-2.课程表Course(c_id,c_name,t_id)---课程号,课程名称,教师编号–3.教师表Teacher(t_id,t_name)–教师编号,教师姓名–4.成绩表Score(s_id,c_id,s_score)–学号,课程编号,分数测试数据--建表--studenttableCREATETABLEStudent(`s_id`VARCHAR(20),`s_name`VARCHAR(20)NOTNULLDEFAULT'',`s_birth`VARCHAR(20)NOTNULLDEFAULT'',`s_sex`VARCHAR(10)NOTNULLDEFAULT'',PRIMARYKEY(`s_id`));--课程表CREATETABLECourse(`c_id`VARCHAR(20),`c_name`VARCHAR(20)NOTNULLDEFAULT'',`t_id`VARCHAR(20)NOTNULL,PRIMARYKEY(`c_id`));--TeachertableCREATETABLETeacher(`t_id`VARCHAR(20),`t_name`VARCHAR(20)NOTNULLDEFAULT'',PRIMARYKEY(`t_id`));--CREATETABLEScore(`s_id`VARCHAR(20),`c_id`VARCHAR(20),`s_score`INT(3),PRIMARYKEY(`s_id`,`c_id`));--插入学生tabletestdatainsertintoStudentvalues('01','赵磊','1990-01-01','男');insertintoStudentvalues('02','钱电','1990-12-21','男');insertinstudentvalues('03','SunFeng','1990-05-20','Male');insertinstudentvalues('04','李云','1990-08-06','男');insertinstudentvalues('05','周梅','1991-12-01','女');insertinstudentvalues('06','吴兰','1992-03-01','女');insertinstudentvalues('07','郑竹','1989-07-01','女');insertinstudentvalues('08','王菊','1990-01-20','女');--课程测试数据insertintoCoursevalues('01','Chinese','02');insertintoCoursevalues('02','Mathematics','01');insertintoCoursevalues('03','English','03');--教师表测试数据insertintoTeachervalues('01','张三');insertintoTeachervalues('02','李斯');insertintoTeachervalues('03','王武');--scoresheettestdatainsertintoScorevalues('01','01',80);插入分数值('01','02',90);插入分数值('01','03',99);插入分数值('02','01',70);插入分数值('02','01',70)分数值('02','02',60);插入分数值('02','03',80);插入分数值('03','01',80);in插入分数值('03','02',80);插入分数值('03','03',80);插入分数值('04','01',50);插入分数值('04','01',50);插入分数值('04','02',30);插入分数值('04','03',20);插入分数值('05','01',76);插入分数值('05','02',87);插入分数值('06','01',31);插入分数值('06','03',34);插入分数值('07','02',89);插入分数值('07','03',98);