mysql 获取学生个人科目平均分


 

mysql> select * from test;
+----+----------+-------+-----------+
| id | name     | score | subject   |
+----+----------+-------+-----------+
|  1 | xiaoming |    89 | shuxue    |
|  2 | xiaohong |    89 | shuxue    |
|  3 | xiaohong |    80 | english   |
|  4 | xiaohong |    80 | physics   |
|  5 | xiaohong |    80 | astronaut |
|  6 | xiaoming |    80 | physics   |
|  7 | xiaoming |    80 | astronaut |
|  8 | xiaoming |    80 | english   |
|  9 | xiaobai  |    80 | astronaut |
| 10 | xiaobai  |    80 | english   |
| 11 | xiaobai  |    80 | physics   |
| 12 | xiaobai  |    80 | shuxue    |
| 13 | xiaohei  |    80 | astronaut |
| 14 | xiaohei  |    80 | shuxue    |
| 15 | xiaohei  |    80 | physics   |
| 16 | xiaohei  |    80 | english   |
+----+----------+-------+-----------+
16 rows in set (0.00 sec)



mysql> select name,avg(score) from test group by name;
+----------+------------+
| name     | avg(score) |
+----------+------------+
| xiaobai  |    80.0000 |
| xiaohei  |    80.0000 |
| xiaohong |    82.2500 |
| xiaoming |    82.2500 |
+----------+------------+
4 rows in set (0.01 sec)



mysql> select name,sum(score)/count(*) from test group by name;
+----------+---------------------+
| name     | sum(score)/count(*) |
+----------+---------------------+
| xiaobai  |             80.0000 |
| xiaohei  |             80.0000 |
| xiaohong |             82.2500 |
| xiaoming |             82.2500 |
+----------+---------------------+
4 rows in set (0.00 sec)

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM