我开始学习JPA,并已基于我在SQL Server中测试的以下本机SQL实现了JPA查询示例:
SELECT f.StudentID, f.Name, f.Age, f.Class1, f.Class2 FROM Student f LEFT OUTER JOIN ClassTbl s ON s.ClassID = f.Class1 OR s.ClassID = f.Class2 WHERE s.ClassName = 'abc'
通过上面的SQL,我构造了以下JPQL查询:
SELECT f FROM Student f LEFT JOIN f.Class1 s;
如您所见,我仍然缺少OR s.ClassID = f.Class2原始查询中的条件。我的问题是,如何将其放入JPQL?
OR s.ClassID = f.Class2
写这个;
SELECT f from Student f LEFT JOIN f.classTbls s WHERE s.ClassName = 'abc'
因为您的学生实体与ClassTbl实体具有一对多关系。