首页 > 数据库技术 > 详细

mysql学习——mysql查询语句综合练习

时间:2014-07-16 18:24:29      阅读:601      评论:0      收藏:0      [点我收藏+]

练习一:

 

设有成绩表stu如下:

姓名 科目 成绩
张三 数学 90
张三 语文 50
张三 地理 40
李四 语文 55
李四 政治 45
王五 政治 30
王五 数学 70

 

 

 

 

 

 

试查询两门及两门以上不及格同学的平均分

解答如下

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;

bubuko.com,布布扣

#其它相关查询1——查询存在两门(包含两门)以上课程不及格的学生的姓名

select name from stu where score<60 group by name having count(subject)>=2;

bubuko.com,布布扣

#其它相关查询2——对本题的一点解释

bubuko.com,布布扣

mysql学习——mysql查询语句综合练习,布布扣,bubuko.com

mysql学习——mysql查询语句综合练习

原文:http://www.cnblogs.com/sunny-smile/p/3845396.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!