根据订单创建时间获取当月订单总金额
List<String> dateList = new ArrayList<>();//存时间
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM");//时间格式
Calendar calendar = Calendar.getInstance();
for (int i = 1; i < 10; i++) {
dateList.add(simpleDateFormat.format(calendar.getTime()));
calendar.add(Calendar.MONTH, -1);
}
System.out.println(dateList.toString());
StringTemplate 模板引擎 – 需要更深了解,自行面向网络编程
StringTemplate不需要使用月份开始 和 结束 between and 去数据库取数据了
以往:2020.01.01 00:00:00 <= date < 2020.02.01 00:00:00
现在:使用2020.01即可
//根据订单创建时间获取当月订单总金额
QOrder qOrder = QOrder.order;
//构造模版
StringTemplate template = Expressions.stringTemplate("DATE_FORMAT({0},{1})", QOrder.createDate, "%Y-%m");
List<Long> priceList = jpaQueryFactory.
select(qOrder.price.sum())
.from(qOrder).where(template.in(dateListNew))
.fetch();