2009-10-29 83 views
1

广泛的谷歌搜索后,我仍然无法找到这个问题的明确答案。我见过的一些旧文章/博客文章根本没有说。如果下属数据库支持它,有人会说是。这是什么?到目前为止,我向nhusers小组询问没有答案。任何帮助,将不胜感激。NHibernate HQL是否支持UNION ALL关键字?

回答

0

我读的地方,它没有,虽然我不能找出原因。 最好的看法是尝试一下你的自我...

+0

o.k.w链接清除了这个。它根本不支持工会。 – Dani 2009-10-29 10:55:17

+0

@Dani:这里!!! http://stackoverflow.com/questions/247103/how-do-you-do-a-union-of-two-tables-in-nhibernate – 2009-10-29 11:07:37

2

NHibernate不支持联合。结果中总是有一种类型。

你可以做的是对基类或接口的查询。 NHibernate将执行一个联合来获取实体映射到的所有表中的所有值。

还有union-subclass映射策略,这也意味着有一个基类或接口。

+0

嘿Stefan,通过使用接口/基类,你的意思是使用多态查询,右键?我遵循多态策略(一个接口,两个具体类)和查询工作正常,但IQueryable.Count()不返回所需的值。它只返回第一个类型的计数。我想知道你是否有过这样的问题? [我认为计数问题可能与NH-2500有关] – kaptan 2012-09-15 02:16:57

+0

我不认为它与NH-2500(https://nhibernate.jira.com/browse/NH-2500)有关,它与查询参数。很可能“选择计数”只是没有以这种方式实现。我没有找到任何资源。你可以在代码中找到它。 – 2012-09-18 09:39:56