jpa-子查詢

jpa自定义复杂查询(包含子查询,自定义排序)

自定义请求参数结构

    private Integer pageNo = 0;
    private Integer pageSize = 10;
    private List<Filter> filter;
    private List<Reorder> reOrders;

子查询

//子查询 from
Subquery<ReaderEmployeeRelationModel> subQuery = query.subquery(ReaderEmployeeRelationModel.class);
//子查询root获取
select * Root<ReaderEmployeeRelationModel> subRoot = subQuery.from(ReaderEmployeeRelationModel.class);
                    subQuery.select(subRoot.get("id").get("employeeGid"));
//主表与子表关联字段 指定subbquery 
Predicate readerEqual = cb.equal(subRoot.get("id").get("readerGid"), request.getOperatorGid());
                    subQuery.where(readerEqual);
//指定子查询字段
Predicate readerIn = cb.in(root.get("id").get("employeeGid")).value(subQuery);

猜你喜欢

转载自www.cnblogs.com/xiaoshahai/p/12121034.html
今日推荐