mysql查询学生表的总人数,MySQL(表)-实操数据查询

MySQL(表)-实操数据查询

MySQL(表)-实操:数据查询

练习1:成绩表筛选

创建成绩表(exam):

CREATE TABLE exam(

id INT PRIMARY KEY AUTO_INCREMENT,

NAME VARCHAR(20) NOT NULL,

chinese DOUBLE,

math DOUBLE,

english DOUBLE

);

c29f105a0677487eae7aac7ff8031816.png

插入数据:

INSERT INTO exam VALUES(NULL,'关羽',85,76,70);

INSERT INTO exam VALUES(NULL,'张飞',70,75,70);

INSERT INTO exam VALUES(NULL,'赵云',90,65,95);

INSERT INTO exam VALUES(NULL,'刘备',97,50,50);

INSERT INTO exam VALUES(NULL,'曹操',90,89,80);

INSERT INTO exam VALUES(NULL,'司马懿',90,67,65);

78e08077032cb4e6e570190c1e401e7f.png

我们将进行以下练习:

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

SELECT * FROM exam;

dc1d36d33865cce84d0fea225e918ce5.png

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

SELECT NAME,english FROM exam;

1c53f2f3b789abfef4391fdb17e6562f.png

3、过滤表中重复数据。

SELECT DISTINCT * FROM exam;

0c1d78eb9d957dea2f1053301900c1cd.png

4、在所有学生分数上加10分特长分。

SELECT NAME 姓名,(chinese+10) 语文加10分,math=(math+10) 数学加10分,english=(english+10) 英语加10分 FROM exam;

5a3343768aafa564b28cb6199b208309.png

5、统计每个学生的总分。

SELECT NAME 姓名,(chinese+math+english) 总分 FROM exam;

f76620fa3200d8452504768683fa51c9.png

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

SELECT NAME 姓名,chinese 语文,math 数学,english 英语 FROM exam;

fc31562c0f695b5515342c10bb5bf39e.png

-----使用WHERE子句

7、查询姓名为刘备的学生成绩

SELECT * FROM exam WHERE NAME="刘备";

f52baa28032191b683b1ab692246a738.png

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

SELECT * FROM exam WHERE english>90;

65a8bc84481d641e772427538f3bf6f8.png

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

SELECT * FROM exam WHERE (chinese+math+english)>200;

0d6cd5058550cb4743d1cd2c0f57aadc.png

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

SELECT * FROM exam WHERE english>=80 AND english<=90;

28d4d8865c77a2954d7324acde4f1e47.png

11、查询数学分数为89,75,91的同学。

SELECT * FROM exam WHERE math=89 OR math=75 OR math=91;

5b1eea36e92c1e4f32812deddec31c3b.png

12、查询所有姓刘的学生成绩。

SELECT * FROM exam WHERE NAME LIKE "刘%";

3049809fe0b9cdc6ea31003716025477.png

13、查询所有姓刘两个字的学生成绩。

SELECT * FROM exam WHERE NAME LIKE "刘_";

e62a98561cc6e77604c3646eeccb03c5.png

14、查询数学分>80并且语文分>80的同学。

SELECT * FROM exam WHERE math>80 AND chinese>80;

97fc3e402d166a3950db68b4ebfee800.png

15、查询数学分>80 或者 语文分>80的同学。

SELECT * FROM exam WHERE math>80 OR chinese>80;

832457a665decafd7fbaac51452e9f95.png

------使用ORDER BY  排序

16、对数学成绩排序后输出。

SELECT * FROM exam ORDER BY math;

b025f8e542e7d3ebdb7810a0544c76bf.png

17、对总分排序按从高到低的顺序输出

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

de6cc8e5a405a489c1e9876f8de32839.png

18、对姓赵的学生成绩排序输出

SELECT *,(chinese+math+english) 总分 FROM exam WHERE NAME LIKE "赵%" ORDER BY 总分;

070d3bc2e340809f746cdc8c5bac8350.png

------使用COUNT(函数)

19、统计一个班级共有多少学生?

SELECT COUNT(*)  数量 FROM exam;

1ae566dd1f0ae53cdd27713f4af23705.png

20、统计数学成绩大于或等于90的学生有多少个?

SELECT COUNT(*)  数量 FROM exam WHERE math>=90;

1ada94ed0172b2469193db88139f28b5.png

语文成绩大于或等于90的学生数量:

SELECT COUNT(*) 数量 FROM exam WHERE chinese>=90;

502a60885fd3a11cedfe5954e07216fb.png

21、统计总分大于220的人数有多少?

SELECT COUNT(*) 数量 FROM exam WHERE (chinese+math+english)>220;

ffec5298f59c88af4b5b3e66bc8eea83.png

-------使用SUM函数

22、统计一个班级数学总成绩?

SELECT SUM(math) 数学成绩总和 FROM exam;

e331af50040493c2fa4df3c06c96d6d4.png

23、统计一个班级语文、英语、数学各科的总成绩

SELECT SUM(chinese) 语文成绩总和,SUM(math) 数学成绩总和,SUM(english) 英语成绩总和 FROM exam;

3dd2eb447ec2e1a3b7c707392db47153.png

24、统计一个班级语文、英语、数学的成绩总和

SELECT SUM(chinese+math+english) 3科成绩总和 FROM exam;

afe1067e5126e588d59d579234ddec93.png

25、统计一个班级语文成绩平均分

SELECT SUM(chinese)/COUNT(*) 语文成绩平均分 FROM exam;

cee47097680bb482da12145983406296.png

也可以SELECT AVG(chinese) 语文成绩平均分 FROM exam;

6ceaf96aae4931e769cdd05419633e6d.png

--------使用AVG函数

26、求一个班级数学平均分?

SELECT AVG(math) 数学成绩平均分 FROM exam;

a8c3bf8d5f0c4545b9f5f653412b5c04.png

27、求一个班级总分平均分

SELECT AVG(chinese+math+english) 班级总平均分 FROM exam;

69d762cac0c3a49d5721218ffe1132c4.png

-------使用MAX,MIN函数

28、求班级最高分和最低分(数值范围在统计中特别有用)

SELECT MAX(chinese+math+english) 班级最高分,MIN(chinese+math+english) 班级最低分 FROM exam;

59af2284d27accb066053ae9d0d5f08b.png

MySQL(表)-实操数据查询相关教程

  • 18
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值