从临时表Nhibernate中选择

时间:2012-08-06 18:37:13

标签: c# sql-server nhibernate fluent-nhibernate

我想使用Nhibernate发出select from (subquery_with_temporary_table)请求。问题是,它似乎是唯一可用于制作查询服务器端的选项。

我需要像这样的人:

SELECT * from IdTable1.Id, IdTable2.Id, Average(Max(Column1) - Min(Column2))
From IdTable1, IdTable2
GROUP BY IdTable1.Id, IdTable2.Id

SQL不允许执行嵌套聚合函数,下一个解决方案可以正常工作:

  SELECT AVG(max - min) FROM 
   (SELECT * from IdTable1.Id, IdTable2.Id, Max(Column1)as max,  Min(Column2)as min
    From IdTable1, IdTable2
    GROUP BY IdTable1.Id, IdTable2.Id)

我对这个子查询没有强烈的偏好,但是我真的想避免拉出额外的数据服务器端,因为表非常庞大(记录的数量)

使用NHibernate QueryOver解决此问题的最佳方法是什么? (避免SQL和HQL是项目的约定)

0 个答案:

没有答案