我尝试将以下 SQL 查询转换为 HQL。不幸的是,外连接从来不是我最喜欢处理的。
SELECT DISTINCT T_EMPLOYEE.SSN,
T_EMPLOYEE.TRANSACTION_ID,
T_EMPLOYEE.NAME,
T_EMPLOYEE.CANCEL_DATE,
T_EMPLOYEE.CAN_USERID,
T_DEPARTMENT.LOC FROM T_EMPLOYEE,
T_DEPARTMENT
WHERE ( T_EMPLOYEE.DEPARTMENT_CODE = T_DEPARTMENT.CODE (+)) and
( ( T_EMPLOYEE.SSN = :s_ssn ) )
我知道右边的 (+) 符号是 Oracle 的旧式外连接序列(因为它在右边,所以它是左外连接)。T_EMPLOYEE 和 T_DEPARTMENT(遗留数据库)之间也没有外键关系。
两个问题: 1. 在没有外键关系的情况下,HQL 中是否可以使用 theta 样式(即使用 =)外连接?2. 如果是这样,有人可以帮我将其转换为 HQL 吗?
杰森