【发布时间】:2018-06-20 22:36:34
【问题描述】:
public class EmployeeUserMap {
@ManyToOne
@JoinColumn(name = "EMPLOYEEID", unique = true)
protected Employee employee;
@ManyToOne
@JoinColumn(name="USERID")
private User user;
}
public class RoleUserMap {
@ManyToOne
@JoinColumn(name = "ROLEID")
private Role role;
@ManyToOne
@JoinColumn(name = "USERID")
private User user;
}
下面是我的 SQL 查询。
select e.id ,e.firstname from employee_user_map o
left join role_user_map ru on ru.userid = o.userid
left join employee e on e.id = o.employeeid
where ru.roleid = (select r.id from role r where r.code='Role_Merchant')
我尝试了 HQL 查询。
SELECT new com.erp.core.repository.value.LookupValue(o.id,o.firstName,o.firstName) FROM EmployeeUserMap o
LEFT JOIN o.user =
WHERE /*@{SYSTEM_CRITERIA}*/1=1 AND (UPPER(o.firstName) LIKE UPPER(CONCAT('%',:searchParam,'%')))
【问题讨论】:
-
您的 HQL 查询与 SQL 查询几乎没有相似之处。这是有原因的吗?
-
没有。那是因为我在写完 SQl 后决定使用 HQL。
标签: java sql hibernate orm hql