请教Hibernate操作oracle数据库产生随机数问题

开发项目过程中,根据需求需要查询时随机产生记录,因此,我通过产生随机数获取随机值,进行查询记录。
但在开发过程Hibernate在执行SQL语句时,却执行产生随机数函数时报错。
代码:
tringBuffer hql = new StringBuffer("select trunc(dbms_random.value(min(rec_id),max(rec_id)+1)) from MemberInfo tbl ");
List list = getHibernateTemplate().find(hql.toString());
return list;

在数据库执行可以得到结果,但在程序中执行出现异常,请大家指正。不胜感激。
报错如下:
org.springframework.orm.hibernate3.HibernateQueryException: unexpected AST node:
在网上查询后,无法得到答案。
无奈之下只得提前产生随机数,既而查询时进行
Query q = s.createQuery(hql.toString());
q.setFirstResult(随机数);
q.setMaxResults(随机数);
进行查询。
不知道是否还有更好的解决办法。

你可能感兴趣的:(oracle,sql,Hibernate,orm)