领取阿里云通用云产品最高2000元优惠券
–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)–学生编号,课程编号,分数
测试数据
student学生表:
score分数表:
course课程表:
teacher老师表:
--准备条件,去掉sql_mode的ONLY_FULL_GROUP_BY否则此种情况下会报错:--Expression#1ofselectlistisnotingroupbyclauseandcontainsnonaggregatedcolumn'userinfo.--原因:--MySQL5.7.5和up实现了对功能依赖的检测。如果启用了only_full_group_bySQL模式(在默认情况下是这样),--那么MySQL就会拒绝选择列表、条件或顺序列表引用的查询,这些查询将引用组中未命名的非聚合列,而不是在功能上依赖于它们。--(在5.7.5之前,MySQL没有检测到功能依赖项,only_full_group_by在默认情况下是不启用的。关于前5.7.5行为的描述,请参阅MySQL5.6参考手册。)--执行以下个命令,可以查看sql_mode的内容。SHOWSESSIONVARIABLES;SHOWGLOBALVARIABLES;select@@sql_mode;--更改setglobalsql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';setsessionsql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';