关于hibernate的问题,query对象
在调用list = query.list();之前 ,HQL语句为:
SELECT COUNT(*) FROM JobPlan AS jobPlan WHERE jobPlan.storeHouseNO = ? AND jobPlan.jobPlanType = ? AND jobPlan.state = ? AND jobPlan.userNO = ? AND jobPlan.recordType = ? ORDER BY jobPlan.createDate ASC
在调用之后,执行的却变成了:
select * from ( select COUNT(*) as x0_0_ from B_JOBPLAN jobplan0_ where (jobplan0_.STOREHOUSENO=? )AND(jobplan0_.JOBPLANTYPE=? )AND(jobplan0_.STATE=? )AND(jobplan0_.USERNO=? )AND(jobplan0_.RECORDTYPE=? ) order by jobplan0_.CREATEDATE ASC ) where rownum <= ?
为什么会在语句前加上了“select * from ( ”,在语句后加上了“where rownum <= ?”,为什么?