QueryDSL Left Join的附加条件为ON

QueryDSL Left Join的附加条件为ON,第1张

QueryDSL Left Join的附加条件为ON

可以

on()
在QueryDSL中使用,包括最新版本
JPAQuery
也支持
on()
谓词

这样就可以实现,

QPartsTable qParts = QPartsTable.partsTable;QInventoryBalance qBalance = QInventoryBalance.inventoryBalance;JPAQuery q = new JPAQuery(em);q.from(qParts).leftJoin(qParts.inventoryBalance, qBalance).on(qBalance.month.eq(yourMonth).and(qBalance.year.eq(yourYear))).list(qParts);

JPAQuery
实现
JPQLCommonQuery
接口,因此它具有所有必需的方法。

这是QueryDSL最新版本的文档,带有使用

on()
示例的左连接。

更新:

on()
从QueryDsl 3.0.0版本开始引入。因此,对于低于3.0.0的版本,此功能不可用。

我建议您至少将版本升级到3.0.0,因为与旧版本相比,该API的功能更强大。甚至,我强烈建议您升级到最新的稳定版本(3.6.2),应该不会有任何问题,因为新的API支持以前的所有功能,并具有其他功能。

更新2: 如评论中提到的@ Cezille07
,在较旧的版本中有

with()
替代
on()
。当我们从看问题,
with()
已被替换
on()
以后。

因此,对于较旧的版本,

with()
就可以了。这是一个有用的链接,其中包含更多详细信息。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5502131.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存