日期:2014-05-16 浏览次数:20899 次
MySql中不支持top语句
select?top?3?*?from?table??desc?
?
取前5条记录:
select * from tablename ?limit 0,5
--------------------------------------------------------
在HQL+MYSQL中不能直接在查询语句中使用LIMIT进行检索,正确方法为:
Query query = session.createQuery(hql);
query.setFirstResult(pageroffset);
query.setMaxResults(e);
pageroffset:开始检索的位置,int
e:返回最大记录行,int
执行此HQL后在生成的查询语句中会自动加上limit ?
-----------------------------------------------------------------
在使用hql时,如果使用sql语句查询,需要类型转换
SQLQuery query = session.createSQLQuery(str.toString()); ? ? ??
query.addScalar("user_id", Hibernate.INTEGER);
query.addScalar("user_name", Hibernate.STRING);
query.addScalar("login_name", Hibernate.STRING);
query.addScalar("user_paw", Hibernate.STRING);
query.addScalar("user_sex", Hibernate.INTEGER);
query.setResultTransformer(Transformers.aliasToBean(User.class));
?
?
对应的User.class
?