更新 SQL 数据,合并列

Update SQL data, consolidating columns

我的 table 看起来像这样:

Name | Maths | Science | Social
-----+-------+---------+-------    
ABC    NULL      A+      NULL
ABC     B       NULL     NULL 
ABC    NULL     NULL      A
XYZ     A       NULL     NULL
XYZ    NULL      B       NULL

情况是成绩由每位老师给出,并以上述格式存储在 table 中。学生 ABC 已经参加了所有的论文并且他的表现有成绩,学生 XYZ 只出现了数学和科学所以他应该只有两个成绩

现在我的结果应该是这样的

Name | Maths | Science | Social
-----+-------+---------+-------    
ABC     B        A+        A
XYZ     A        B        NULL 

我正在尝试使用所有可能的选项来检索它。

如果您应用 MAX,则 NULL 值将被忽略,并且将为每个主题返回所需的值:

SELECT Name, MAX(Maths), MAX(Science), MAX(Social)
FROM Grades
GROUP BY Name