【问题标题】:HQL to JPQL questionHQL 到 JPQL 问题
【发布时间】:2011-02-24 19:21:08
【问题描述】:

以下 HQL 查询到 EclipseLink 兼容 JPQL 的翻译是什么:

select p from NameList list, Person p
where p.name in elements(list.names)

(这只是取自 here 的 HQL 示例查询的变体)

在 EclipseLink 中,IN 函数似乎没有采用属性路径:

Internal Exception: NoViableAltException(36!=[693:1: inExpression[boolean not, Object left] returns [Object node] : (t= IN n= inputParameter | t= IN LEFT_ROUND_BRACKET (itemNode= inItem ( COMMA itemNode= inItem )* | subqueryNode= subquery ) RIGHT_ROUND_BRACKET );])

我可能可以通过另一个连接来解决这个问题,但是有什么更紧凑的吗?

【问题讨论】:

    标签: hibernate hql eclipselink jpql


    【解决方案1】:

    我找到了解决方案:

    select p from NameList list, Person p
    where p.name member of list.names
    

    此解决方案符合 JPA 2。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-10
      • 2012-09-05
      • 1970-01-01
      • 1970-01-01
      • 2021-05-03
      • 2018-09-03
      • 1970-01-01
      相关资源
      最近更新 更多