gpt4 book ai didi

java - (SQL + Hibernate) 统计 12 个月前的记录

转载 作者:行者123 更新时间:2023-11-30 00:08:57 25 4
gpt4 key购买 nike

有人可以帮我找到一种方法来获得 Array包含使用 <date_field> 按月计算的记录计数 。我需要计算 12 个月前的每条记录,如果不存在记录,则将放入数组中。

这是我在 java + hibernate 中的基本代码:

public Integer[] getViewsPerMonths() {
Query query = sessionFactory.getCurrentSession().createQuery("");
Integer[] viewsPerMonths = (Integer[])query.list().toArray();
return viewsPerMonths;
}

表格示例:

Id      |        View_Date     |

1 01-01-2014
2 02-01-2014
3 03-01-2014
4 03-01-2014

期望的结果:

  Count  |    Month
1 1
1 2
2 3

我正在使用 MySQL

谢谢...

最佳答案

为了获得一般的计数,代码如下所示:

CriteriaQuery<Long> countQuery = queryBuilder.createQuery(Long.class);
countQuery.select(criteriaBuilder.count(countQuery.from(clas)));
countQuery.where(condition);
count = entityManger.createQuery(countQuery).getSingleResult();

这里的“条件”将是您的谓词对象。像这样的东西:

condition = criteriaBuilder.between(v, x, y)

更多信息请点击:http://docs.oracle.com/javaee/6/api/javax/persistence/criteria/CriteriaBuilder.html#between%28javax.persistence.criteria.Expression,%20javax.persistence.criteria.Expression,%20javax.persistence.criteria.Expression%29

关于java - (SQL + Hibernate) 统计 12 个月前的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24247884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com