【问题标题】:Hibernate: Error when using sub query休眠:使用子查询时出错
【发布时间】:2012-04-26 07:32:00
【问题描述】:

我正在尝试以这种格式编写子查询

listObj = session.createQuery("from TablePersistence where column1 not in (select column2 from TablePersistence)").list();

请注意,我在子查询中使用了同一张表的不同列。

但是当它执行时我得到一个异常。异常消息是:

No data type for node: org.hibernate.hql.ast.tree.IdentNode 
\-[IDENT] IdentNode: 'column2' {originalText=column2}

如果需要,我也可以提供堆栈跟踪。

但是从堆栈跟踪中我的感觉是,这不是编写子查询的方式,我遗漏了一些东西。

请告诉我这个查询有什么问题。

谢谢!!

【问题讨论】:

    标签: java hibernate hql subquery


    【解决方案1】:

    您需要提供表别名。然后就可以了

    from TablePersistence table1 where table1.column1 not in (select table2.column2 from TablePersistence table2)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 2018-06-15
      • 2013-07-24
      • 2010-12-06
      相关资源
      最近更新 更多