在 QueryDSL 中使用 Between 作为日期参数

问题描述 投票:0回答:2

我正在将 QueryDSL 与 jpa 结合使用,我想查找日期范围之间的记录,如下所示

query.from(timeSheet)
              .where(timeSheet.date.between(fromDate, toDate)).fetch();

但 Between 只支持布尔和字符串表达式

java jpa querydsl
2个回答
0
投票
query.from(timeSheet)
              .where(timeSheet.date.between("today >= fromDate AND today <= toDate")).fetch();

尝试类似的事情。


0
投票

这段代码对我有用。所有日期均为

LocalDate
甲酸盐。

JPAQueryFactory jpaQueryFactory = new JPAQueryFactory(entityManager);
return jpaQueryFactory
                .from(qAccVoucherMaster)
                .leftJoin(qAccVoucherMaster.accFinancialYear, qAccFinancialYear).fetchJoin()
                .where(qAccVoucherMaster.voucherDate.between(fromDate, toDate))
                .fetch();
© www.soinside.com 2019 - 2024. All rights reserved.