mysql查最后几条数据问题
后台使用了hibernate
String Hql = "from Blog order by blogid desc limit 10"; //这一语句为什么查出了所有行数据???
Query q = session.createQuery(Hql);
在mysql里敲:select * from blog order by blogid desc limit 10 //这个就查出了最后10条数据
问题:HQL语句怎样写才能查出了最后10条数据呢???数据库是mysql
------解决方案--------------------
Query qy=session.createQuery("from Blog as b order by b.blogid asc");
用了asc然后分页查询取前10
这样的列子很多我搜了个----
Hibernate 可以实现分页查询,例如:
从第2万条开始取出100条记录
Query q = session.createQuery("from Cat as c");
q.setFirstResult(20000);
q.setMaxResults(100);
------解决方案--------------------用order by 显然是不好,你order by的是整个表的记录,这个是不可取的吧。order by 依我看用在where 之后还说的过去。
我想先得到记录的总条数totalRecord,这个不是太费,也有点不咋滴。
q.setFirstResult(totalRecord-10);
q.setMaxResults(10);