mysql基础练习1

目录

1.单表练习题

1.查询表中所有学生的信息。

2 查询表中所有学生的姓名和英语成绩。

3 过滤表中重复数据。(去重的关键字 distinct)

4.统计每个学生的总分

5.在所有学生总分数上加10分特长分。

6.使用别名表示学生分数。

7.查询姓名为行哥的学生成绩

8.查询英语成绩大于90分的同学

9.查询总分大于200分的所有同学

10.查询英语分数在 80-90之间的同学。

11.查询数学分数为89,90,91的同学。

12.查询所有姓白的学生英语成绩。

13.查询数学分>80并且语文分>80的同学

14.查询英语>80或者总分>200的同学

15.对数学成绩升序排序

16.对总分降序排序,然后再按数学从高到低的顺序输出

17.对姓白的学生成绩排序输出(排序规则自己定义)

18.查询数学成绩大于等于平均分的所有学生信息

19.查询出英语成绩最高分的学生信息

20.模糊查询出学生姓名中第二个字是金的学生信息

21.查询出英语成绩平均分是多少

22.查询出数学总分是多少

23.查询学生表中有多少条记录


1.单表练习题

create table student( 
id int, -- id编号 
name varchar(20), -- 姓名 
chinese int, -- 语文 
english int, -- 英语 
math int -- 数学 
);

insert into student(id,name,chinese,english,math) values(1,'行哥',89,78,90); 
insert into student(id,name,chinese,english,math) values(2,'潘金莲',67,53,95);
insert into student(id,name,chinese,english,math) values(3,'凤姐',87,78,77); 
insert into student(id,name,chinese,english,math) values(4,'旺财',88,98,92); 
insert into student(id,name,chinese,english,math) values(5,'白小黑',82,84,67); 
insert into student(id,name,chinese,english,math) values(6,'白小黄',55,85,45); 
insert into student(id,name,chinese,english,math) values(7,'范蹦蹦',75,65,30);

1.查询表中所有学生的信息。

SELECT * FROM student;

2 查询表中所有学生的姓名和英语成绩。

SELECT NAME,english FROM student ;

3 过滤表中重复数据。(去重的关键字 distinct)

SELECT DISTINCT * FROM student;

4.统计每个学生的总分

SELECT id, NAME,(chinese+english+math) '总分' FROM student ;

5.在所有学生总分数上加10分特长分。

SELECT id, NAME,(chinese+english+math+10) '总分' FROM student ;

6.使用别名表示学生分数。

SELECT id ,NAME,chinese '语文成绩',english '英语成绩',math '数学成绩' FROM student;

7.查询姓名为行哥的学生成绩

SELECT * FROM student WHERE NAME = '行哥';

8.查询英语成绩大于90分的同学

SELECT id,NAME,english '英语成绩' FROM student WHERE english > 90;

9.查询总分大于200分的所有同学

SELECT id, NAME,(chinese+english+math) '总分' FROM student WHERE (chinese+english+math) 
> 200;

10.查询英语分数在 80-90之间的同学。

SELECT id,NAME,english '英语成绩' FROM student WHERE english BETWEEN 80 AND 90;

11.查询数学分数为89,90,91的同学。

SELECT id,NAME,math '数学分数' FROM student WHERE math = 90 || math = 89 || math = 91;

12.查询所有姓白的学生英语成绩。

SELECT id,NAME,english '英语成绩' FROM student WHERE NAME LIKE '%白_%';

13.查询数学分>80并且语文分>80的同学

SELECT * FROM student WHERE (math > 80) AND (chinese > 80);

14.查询英语>80或者总分>200的同学

SELECT *,(chinese+english+math) '总分' FROM student WHERE (english > 80) 

OR ((chinese+english+math) > 200);

15.对数学成绩升序排序

SELECT * FROM student ORDER BY math ASC;

16.对总分降序排序,然后再按数学从高到低的顺序输出

SELECT *,(chinese+english+math) '总分' FROM student ORDER BY (chinese+english+math) 
DESC ,math ASC;

17.对姓白的学生成绩排序输出(排序规则自己定义)

SELECT * FROM student WHERE NAME LIKE '%白_%' ORDER BY math;

18.查询数学成绩大于等于平均分的所有学生信息

SELECT * FROM student WHERE math >= (SELECT AVG(math) FROM student);

19.查询出英语成绩最高分的学生信息

SELECT * FROM student WHERE english = (SELECT MAX(english) FROM student);

20.模糊查询出学生姓名中第二个字是金的学生信息

SELECT * FROM student WHERE NAME LIKE '%_金%';

21.查询出英语成绩平均分是多少

SELECT AVG(english) '英语成绩平均分' FROM student;

22.查询出数学总分是多少

SELECT SUM(math) '数学总分' FROM student;

23.查询学生表中有多少条记录

SELECT COUNT(id) FROM student;

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值