mysql学习mysql查询语句综合练习
练习一: 设有成绩表stu如下:
试查询两门及两门以上不及格同学的平均分 解答如下 1.创建数据表 create table stu( id int primary key auto_increment, name char(3) not null default'', subject char(3) not null default'', score decimal(3,1) not null default 0.0 )charset utf8; 2.写入数据 set names gbk;#这样中文汉字才可以正常输入 insert into stu (name,subject,score) values ('张三','数学',90), ('张三','语文',50), ('张三','地理',40), ('李四','语文',55), ('李四','政治',45), ('王五','政治',30), ('王五','数学',70); 3.查询 #本题的解答——查询存在两门(包含两门)以上课程不及格的学生的平均分 select name,avg(score),sum(score<60) as gk from stu group by name having gk>=2;
#其它相关查询1——查询存在两门(包含两门)以上课程不及格的学生的姓名 select name from stu where score<60 group by name having count(subject)>=2;
#其它相关查询2——对本题的一点解释
|