从表格中将特定学生的成绩分组,并在每个学生的单独列中显示总成绩?

要对标记进行分组,请使用MySQL GROUP BY。总而言之,请使用MySQLsum()函数。让我们首先创建一个表-

mysql> create table DemoTable1920
   (
   StudentName varchar(20),
   StudentMarks int
   );

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable1920 values('Chris',67);
mysql> insert into DemoTable1920 values('David',97);
mysql> insert into DemoTable1920 values('Chris',57);
mysql> insert into DemoTable1920 values('David',45);
mysql> insert into DemoTable1920 values('Chris',89);

使用select语句显示表中的所有记录-

mysql> select * from DemoTable1920;

这将产生以下输出-

+-------------+--------------+
| StudentName | StudentMarks |
+-------------+--------------+
| Chris       |           67 |
| David       |           97 |
| Chris       |           57 |
| David       |           45 |
| Chris       |           89 |
+-------------+--------------+
5 rows in set (0.00 sec)

这是将特定学生的分数分组的查询-

mysql> select StudentName,SUM(StudentMarks) as TotalMarks from DemoTable1920
    group by StudentName;

这将产生以下输出-

+-------------+------------+
| StudentName | TotalMarks |
+-------------+------------+
| Chris       |        213 |
| David       |        142 |
+-------------+------------+
2 rows in set (0.00 sec)