我在mysql中有一张表,如下图1所示:
您能告诉我如何进行选择查询吗,其结果将如图2所示
并选择更快:
最佳答案
假设您对STUD_ID,CLASS,LESSON
有唯一的约束
SELECT STUD_ID,
CLASS,
MAX(CASE WHEN LESSON='MATH' THEN MARK END) AS MATH,
MAX(CASE WHEN LESSON='CHEM' THEN MARK END) AS CHEM,
...
AVG(MARK) AS `Avg`
GROUP BY STUD_ID, CLASS
(如果您确实需要与任何ID不相关的
ID
列,则可以使用the technique from here)。