我有两个实体类。
1.Course.java
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
private String name;
2.Student.java
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
private String name;
@ManyToMany
private List<Course> course;
现在我需要一个学生列表,其中课程id = 1或课程id为null; 查询类似&#34; FROM学生st WHERE st.course = 1或课程id为null&#34;。 如何在hql中编写此查询?
答案 0 :(得分:1)
您需要加入:
select s from Student s inner join s.courses c where c.id = 1
请注意,我选择在此查询中将字段course
重命名为courses
:学生有很多课程,而最终的 s 会明确说明。