首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HQL选择错误

HQL选择错误
EN

Stack Overflow用户
提问于 2014-05-15 22:01:19
回答 1查看 255关注 0票数 0

代码是

代码语言:javascript
复制
 String myQuery = "select c.orderId from com.model.Supplier su join com.model.Supplier su2  join su2.product P where su.product.OrderId = :Order and c.order != :Order ";
List<Order> myOrder= getCurrentSession().createQuery(myQuery.toString()).setParameter("Order", aOrder).list();

当执行上面的代码行时,我在屏幕上得到一个错误,如下所示

代码语言:javascript
复制
java.lang.IllegalStateException: DOT node with no left-hand-side!
    at org.hibernate.hql.ast.tree.DotNode.getLhs(DotNode.java:631)
    at org.hibernate.hql.ast.tree.DotNode.getDataType(DotNode.java:606)
    at org.hibernate.hql.ast.HqlSqlWalker.createFromJoinElement(HqlSqlWalker.java:383)
    at org.hibernate.hql.antlr.HqlSqlBaseWalker.joinElement(HqlSqlBaseWalker.java:3671)
    at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3452)
EN

回答 1

Stack Overflow用户

发布于 2014-05-15 22:53:50

假设您的映射是正确的以及外键之类的,我认为您需要指定像“左连接”这样的连接。

请参阅hibernate docs中的有效联接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23680526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档