SELECT 学号, 
    SUM(CASE 考试科目号 WHEN 1 THEN 成绩 ELSE 0 END) AS 科目1成绩,
    SUM(CASE 考试科目号 WHEN 2 THEN 成绩 ELSE 0 END) AS 科目2成绩,
    SUM(CASE 考试科目号 WHEN 3 THEN 成绩 ELSE 0 END) AS 科目3成绩
  FROM tablename

解决方案 »

  1.   

    高手请留步,你这个语句在mysql里执行不了呀
      

  2.   

    SELECT 学号, 
        SUM(CASE 考试科目号 WHEN 1 THEN 成绩 ELSE 0 END) AS 科目1成绩,
        SUM(CASE 考试科目号 WHEN 2 THEN 成绩 ELSE 0 END) AS 科目2成绩,
        SUM(CASE 考试科目号 WHEN 3 THEN 成绩 ELSE 0 END) AS 科目3成绩
      FROM tablename
    GROUP BY  学号