使用rand函数和HQL进行选择

时间:2015-04-03 14:21:28

标签: hibernate jpa random hql

要使用Hql获取10个随机唯一对象的列表,我有这个方法,但我有一个错误

    String sRequete = "select p from TgQuestionnaire p where p.id.idAnnee = :paramAnnee order by rand()";


    try{


        //sRequete = sRequete + " order by p.id.cdQuestionnaire ";

        Query requete = entityManager.createQuery(sRequete);

        if (resultat_max != null && resultat_max > 0) {
            requete.setMaxResults(resultat_max);
        }

        requete.setParameter("paramAnnee", idAnnee);



        listeEnteteQuestionnaire = (List<TgQuestionnaire>) requete
                .getResultList();
        if (listeEnteteQuestionnaire.size() == 0) {
            listeEnteteQuestionnaire = new ArrayList<TgQuestionnaire>();
        }
    } catch (Exception e) {
        log.error("erreur bdd pendant la recherche des entêtes de questionnaire :"
                + e.getMessage());
    }
    return listeEnteteQuestionnaire;
}

错误: 2015/04/03 16:14:39,264 WARN org.hibernate.util.JDBCExceptionReporter - SQL错误:904,SQLState:42000 2015/04/03 16:14:39,264 ERROR org.hibernate.util.JDBCExceptionReporter - ORA-00904:&#34; RAND&#34; :识别非valide

0 个答案:

没有答案