【问题标题】:How to check for empty collection or its property in jpql如何在 jpql 中检查空集合或其属性
【发布时间】:2021-09-10 04:46:36
【问题描述】:

我有一个名为 visit 和 providers 的表。

访问可以有多个提供者,也可以没有提供者。

一次访问可以有多个提供者。

我想要一个 jpql 查询,它应该列出提供者的所有访问。

要列出访问,提供者 ID 应匹配,或者访问不应分配任何提供者。

我试过这样

From visit v join
v.providers p
where( p.provider.id =:providerId 
or p is empty)

但这并不是在没有提供者的情况下列出访问。

请帮忙。

【问题讨论】:

    标签: hibernate jpql


    【解决方案1】:

    您可以尝试更改WHERE 子句中条件的顺序,也可以添加NULL 检查:

    From visit v join
    v.providers p
    where(p IS NULL OR p IS EMPTY OR p.provider.id = :providerId)
    

    【讨论】:

      猜你喜欢
      • 2020-06-11
      • 2021-09-15
      • 1970-01-01
      • 2017-12-23
      • 1970-01-01
      • 1970-01-01
      • 2017-04-12
      • 2013-06-19
      • 1970-01-01
      相关资源
      最近更新 更多