querydsl使用group_concat,case when…else end
QStockBillDetail qStockBillDetail = QStockBillDetail.stockBillDetail;
JPAQuery<AutomaticSnViewModel> jpaQuery = new JPAQuery<>(getDao().getEntityManager());
//group_concat使用
StringTemplate Expr = Expressions.stringTemplate("group_concat({0})",qStockBillDetail.serialNumber);
//case when then .... else end 的使用
NumberExpression expression = new CaseBuilder()
.when(qStockBillDetail.result.eq("1")).then(1)
.when(qStockBillDetail.result.eq("0")).then(1)
.otherwise(0);
jpaQuery = jpaQuery.from(qStockBillDetail)
.select(
Projections.bean(AutomaticSnViewModel.class,
qStockBillDetail.itemsId,
qStockBillDetail.id,
Expr.as("serialNumber"),
expression.sum().as("statusQty")
)).fetch();