hibernate 4 Mssql 2008限制字符串

时间:2016-04-19 06:38:00

标签: java hibernate

我需要运行以下HQL查询:

select top 1000 ent from MyEntity ent Where ....

但它在令牌1000上抱怨。 如何在HQL中为MSSQL 2008手动设置限制?

1 个答案:

答案 0 :(得分:1)

HQL查询中不支持限制运算符。 你有2个解决方案:

使用hql:

Query q = session.createQuery("FROM MyEntity where ...");
q.setFirstResult(1);
q.setMaxResults(1000);

使用nativeQuery:

Query q = session.createNativeQuery("SELECT * FROM MyEntity where ... lIMIT 0, 1000");