hql先排序后分组(查询分组中的最新)(hql 执行原生态sql)
2015-01-13 23:34
330 查看
如果用这种方法进行查询:
会报错,因为Hibernate不支持这种查询。
所以可以利用:
createNativeQuery来创建一个实例的查询执行一个原生SQL查询。
注意:查询语句必须使用的是原生的sql。而有时实体名和表名会不一致,这时就需要注意一些。
String queryString = "select * from (select * from resource r order by r.createTime desc) t group by t.resId"; Query query = entityManager.createQuery(queryString);
会报错,因为Hibernate不支持这种查询。
select * from (select * from resource r order by r.createTime desc) t group by t.resId是原生态的sql查询。
所以可以利用:
Query query = entityManager.createNativeQuery(queryString, Resource.class);
createNativeQuery来创建一个实例的查询执行一个原生SQL查询。
注意:查询语句必须使用的是原生的sql。而有时实体名和表名会不一致,这时就需要注意一些。
相关文章推荐
- Linq排序、分组、模糊查询、调用外部方法、直接执行SQL语句、事务、修改数据
- sql笔记五:高级查询及通配符、排序分组
- sqlserver中分组查询,条件过滤,排序,写这个sql,我为自己感到骄傲
- 一个分组查询的SQL 常用算法(附源码可直接执行)
- [转] 一个分组查询的SQL 常用算法(附源码可直接执行) [来自--http://blog.csdn.net/rainbowsoftware/archive/2007/04/26/1585355.aspx]
- SQL 特殊查询实例 分组、编号、排序、行号
- hibernate--HQL查询语句-----分组、排序--多条件排序
- sql 分组查询,组内排序, 组内添加序号 (SQL Server 排序函数 ROW_NUMBER和RANK 用法总结)
- 【记录】T-SQL 分组排序中取出最新数据
- SQL学习之查询技巧 查询第3的数据 用一条语句分组,排序 并查询某一排名
- [MySQL]学习笔记- 用户行为表中,查询每个人的一条最新行为(分组 排序 取时间最大的一条记录)
- SQL 分组排序取最新一条记录
- hibernate HQL查询语句分组、排序
- SQL你必须知道的-查询聚合分组排序
- hibernate HQL查询语句分组、排序
- DB2 Rank-SQL查询 分组排序
- GROUP BY分组查询与SQL执行顺序
- 实验三(2) SQL查询(排序、集函数和分组子句的应用)
- SQL 分组排序、CASE...WHEN...、是否为空 查询
- GROUP BY分组查询与SQL执行顺序