HQL不是按表名来的吧, 是按你实体类的类名和属性名称来查的。还有,不知道HQL支不支持 top 1 * 这种查法    还有,没看懂楼主说的获取当前行的上一条数据是啥意思!

解决方案 »

  1.   

    HQL不支持top这样的写法,楼主如果实在需要用HQL就先获得List,然后取列表的第一个(get(0))就行
      

  2.   

    我只知道hql是对对象操作的 sql是对表操作的
      

  3.   

    hql不支持top这种语法,hql面对的是实体类,top语法是数据库里的。不过你可以借助setFirstResult 和 setMaxResult设置返回的结果集,或者获取后get(0)。
      

  4.   

    改成SQL语句吧,直接createSQLQuery(sql)就好了,再通过addEntity(xxx)来指定你要返回的实体。