使用Session.CreateCriteria进行Hibernate查询

时间:2017-08-29 16:42:44

标签: java hibernate hibernate-mapping hibernate-criteria

我有3个名为Employee,Office,Department的表。 Employee有4个字段,如id,Emp_Name,Salary,JoiningDate。 Office有3个字段,例如id,Emp_id,Location 部门有id,Off_id,Dept_Name,Emp_id

SQl查询,

SELECT
    DISTINCT TOP 10 this.id as Emp_id, Emp_Name,Salary,Location,Dept_name
FROM
    Employee this
INNER JOIN
    Office  O ON this_id = O.id
INNER JOIN
    Department d on d.Emp_id = this.id
ORDER BY this.id

你能帮我用Session.CreateCriteria(Employee.class,“Employee”)获得等效的Hibernate查询语言吗? 这可能非常有用。

1 个答案:

答案 0 :(得分:0)

hql中的内部联接与查询中的内联接大致相同,但是你不能在hql中使用分页。有关此处的更多信息:https://stackoverflow.com/a/840108/6521788

在这里,您可以找到自己编写查询所需的所有知识:)

https://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html#queryhql-ordering