我有2个实体,Aluno和Matricula。我希望在没有Matricula的情况下返回所有Aluno。为此,我尝试使用JPQL的IS NULL,但仍然无法完成这项工作。
我该怎么做?
我正在尝试这个。
@Entity
public class Aluno{
@Id @GenerateValue
private Long id;
@OneToOne
private Matricula matricula
}
@Entity
public class Matricula{
@Id @GenerateValue
private Long id;
@OneToOne
private Aluno aluno;
}
//
public List<Aluno> getAlunosWithoutMatricula(){
String jpql = "SELECT a FROM Aluno a JOIN a.matricula mat WHERE mat IS NULL";
TypedQuery<Aluno> query = em.createQuery(jpql, Aluno.class);
return query.getResultList();
}
答案 0 :(得分:1)
我解决了问题
这里。
public List<Aluno> getAlunosWithoutMatricula(){
String jpql = "SELECT a FROM Aluno a WHERE (a.matricula IS NULL)";
TypedQuery<Aluno> query = em.createQuery(jpql, Aluno.class);
return query.getResultList();
}