Tag: group by

在hibernate条件查询中选择“group by”的“all columns”

我想使用“group by”编写条件查询,并希望返回所有列。 Plane sql是这样的: select * from Tab group by client_name order by creation_time; 我知道它将具有count(distinct client_name)行数。 我当前的查询似乎没有给出正确的结果如下: Criteria criteria = getSession(requestType).createCriteria(Tab.class); criteria.setProjection(Projections.projectionList().add(Projections.groupProperty(“client_name”))); criteria.addOrder(Order.asc(“creationTime”)); 此查询仅返回”client_name” 。 我不想手动输入所有列名。 必须有某种方式,可以做些什么?

在JSON对象上使用group-by类型的操作

我有以下格式的JSON数据。 [{ “id”: 16966, “post”: “This is about road!”, “category”: “road”, }, . . .] 我想根据类别对JSON条目进行分组。 因此,我将在一个数据结构中获得所有与道路相关的条目(例如列表)。 我知道我可以将数据放入Mongo DB甚至是关系数据库并进行查询。 没有这样做,有没有一些简单的方法来做到这一点?

使用hibernate计算group in中的其他字段

我希望通过hibernate返回组中其他字段的行数 ,并且我的实体类中没有任何字段表示count。 例如,我有一个Payment实体类: class Payment { private Long id; private String totalCode; private String activityCode; private Long amount; // other fields and setter/getters } sql查询: select count(*), sum(p.amount), p.total_code, p.activity_code from tb_payment p group by p.total_code,p.activity_code 和我的hibernate标准: Session session = getCurrentSession(); ProjectionList projectionList = Projections.projectionList(); projectionList.add(Projections.groupProperty(“totalCode”)) .add(Projections.groupProperty(“activityCode”)) .add(Projections.sum(“amount”)) .add(Projections.count(“id”)); Criteria criteria = session.createCriteria(Payment.class); criteria.setProjection(projectionList); List […]

带有group by的SQL连接的HQL版本

我有两张桌子,乐队和投票。 Band有一个名字和一个id,Votes有一个total_votes列和一个名为band_id的外键,指向band.id. 我有很多选票,在不同日期保存。 我想要做的是找到每个波段的total_votes列的最大值。 以下SQL查询有效: select b.name,max(v.total_votes) as total from band b, votes v where b.id=v.band_id group by b.name order by total desc; 不过,我正在使用的系统使用Hibernate。 我想将SQL查询重写为HQL或Hibernate条件查询。 这很容易,我只是错过了吗? 谢谢你的帮助。