My problem is I try to get values from 3 table joining. My mysql query is as follows. It works properly without any errors in sql console. But give errors when run using Java:
StringBuilder queryString = new StringBuilder();
queryString.append("SELECT cs.id, MIN( s.grade_level_val ) as minGrade, MAX( s.grade_level_val ) as maxGrade FROM class_section cs ")
           .append("LEFT JOIN enrollment e ON e.class_section_id = cs.id ")
           .append("LEFT JOIN student s ON s.id = e.student_id ")
           .append("WHERE cs.id = :classSectionId");
TypedQuery<ClassSectionVO> query = (TypedQuery<ClassSectionVO>) entityManager.createNativeQuery(queryString.toString(), ClassSectionVO.class);
query.setParameter("classSectionId", classSectionId);
List<ClassSectionVO> result = query.getResultList();
And here is ClassSectionVO:
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class ClassSectionVO implements Serializable
{
    private static final long serialVersionUID = 1L;
    @Id
    @Column(name = "id")
    private Integer id;
    @Column(name = "minGrade")
    private Short minGrade;
    @Column(name = "maxGrade")
    private Short maxGrade;
    public Integer getId()
    {
        return id;
    }
    public void setId(Integer id)
    {
        this.id = id;
    }
    public Short getMinGrade()
    {
        return minGrade;
    }
    public void setMinGrade(Short minGrade)
    {
        this.minGrade = minGrade;
    }
    public Short getMaxGrade()
    {
        return maxGrade;
    }
    public void setMaxGrade(Short maxGrade)
    {
        this.maxGrade = maxGrade;
    }
}
There is no column max_grade in the query but its gives me the error:
java.sql.SQLException :column 'max_grade' not found.
 
     
     
     
    