将多行合并为具有多个列的行

时间:2016-03-24 16:20:46

标签: php mysql sql

我发现了这个关于将各种行和列合并到行中的查询。

SELECT `studentdata`.`FirstName`,`studentdata`.`LastName`,`grades`.`idClass`, `term`.`TermName`,  
JAVA.ExamGrade AS JAVA, JAVA.CourseWork AS JAVACW 

从成绩     LEFT JOIN ereportv3studentdata ON gradesStudentID = studentdataStudentID
    LEFT JOIN ereportv3term ON gradesidTerm = termIdTerm
    LEFT OUTER JOIN等级JAVA ON(等级。学生ID = JAVA.StudentID和JAVA.idSubject =' JAVA')
    在哪里grade.idTerm =' 5'和grade.idClass =' JAVA1'和studentdataidStatus ='有效'
  按studentdata分组。StudentIDstudentdata排序。LastName

我得到的问题是,当我运行查询时,我将获得该表中该类的所有java记录,而不仅仅是该类指定术语的记录。我不确定我需要做些什么来解决它。我已经四处寻找解决方案,但我还没有找到一个可以按照我的意愿工作的解决方案。有人可以帮助或建议替代?

我在没有语法分组的情况下得到的结果是

FirstName LastName idClass TermName Java JavaCW   John Doe Java1 Jan-Mar 33 45   John Doe Java1 Jan-Mar 0 66

表中人员的所有现有记录

我真正需要的是仅显示此数据

FirstName LastName idClass TermNam Java JavaCW   John Doe Java1 Jan-Mar 0 66

该学期该学生的该课程的实际数据。 (抱歉格式化,不知道如何将其放入表格格式)

0 个答案:

没有答案