Nhibernate HQL Subselect查询

时间:2010-04-26 11:35:51

标签: nhibernate hql

我有以下SQL查询:

select c.id
from (select id from customers) c

这个查询没有实际价值 - 我为了这篇文章的目的大大简化了它。

我的问题:是否可能在使用HQL的from子句中有子查询。如果没有,我可以先查询客户,有点像sql中的临时表,然后使用结果作为下一个查询的来源吗?

感谢

2 个答案:

答案 0 :(得分:7)

是的,这是可能的。

上面的查询可以用HQL编写为:

select Id
from Customer
where Id in (select Id from Customer)

答案 1 :(得分:3)

我自己也遇到过这个问题。我花了一些时间才意识到hql不支持from子句中的子查询。

请参阅hql文档here中的第14.13节。