【发布时间】:2011-10-03 14:41:29
【问题描述】:
我有三个表名为:
schedule (id, status)criteis (id, name, number, bank)info (id, compleInfo)
id 对于所有三个表都是通用的。
我的要求是我想要银行、crities 表中的数字和 info 表中的 compleInfo 以及 Schedule 表中的状态计数。
我用过这个查询
select count(s.status), a.compleInfo, a.bank, a.number
from (select in.compleInfo, cr.bank, cr.number
from criteis cr, info in where cr.id=in.id ) a
left join schedule s on a.id = s.id group by a.id
它在 MYSQL 编辑器上运行良好,但是当我在 Hibernate 上运行它时,我遇到了异常
引起:java.lang.IllegalArgumentException: org.hibernate.hql.ast.QuerySyntaxException:意外令牌:(附近 第 1 行,[ select count(s.status), a.compleInfo, a.bank, a.number from (select in.compleInfo, cr.bank, cr.number from criteis cr, info in 其中 cr.id=in.id ) a.id = s.id group by 上的左加入计划 s a.id]
我google了一下,发现Nhibernate HQL Subselect querieshql不支持from子句中的子查询。
有没有其他方法可以在 Hibernate 中编写上述查询?
【问题讨论】: