我有一个表雇员,其中有一个列管理器,它引用employee_id。 这是一对一的关系,因为每个员工可以有一个经理,每个经理可以管理一个员工:
public class Employee implements java.io.Serializable {
@OneToOne
@JoinColumn(name="manager_id" ,referencedColumnName = "employee_id", nullable=true)
private Employee manager;
我想做的是找到不是经理的员工。我需要使用休眠模式。 我知道“不存在”或“不存在”也可以使用,但是在我的情况下它们的运行速度非常慢,因此我尝试使用左连接,这种连接的速度要快得多。
当我尝试使用左连接时,“ ON子句”是错误的。 这就是我得到的
from
employees employe0_
left outer join
employees employe1_
on employe0_.manager_id=employe1_.employee_id
但是我期望的是
on employe0_.employee_id=employe1_.manager_id