2013-01-05 27 views
0

我需要在nhibernate上執行本機sqn並從報告所需的複雜查詢中獲得總和。 sql查詢只返回一個浮點值的總和。nhibernate原生sql獲取聚合值

float theSum= session.CreateSQLQuery(@"select sum(myfield) myfield from ....") 
           .AddScalar("myfield", NHibernateUtil.Single) 
           .UniqueResult<float>(); 

可以嗎?
有沒有其他方法可以做到這一點? 我想這個汽車投零值爲0.

+0

告訴你的代碼甚至不會編譯,暫時忽略缺少的報價,SQL語法不正確。如果查詢可以產生null,你應該使用可爲空的float作爲返回類型。即使無視這一點,你是否遇到了一些實際問題?你所說的問題是非常開放的。 –

+0

當然,sql語法不正確,因爲它是sql的一部分。其餘的,如果因爲複雜性而沒有顯示sql,那麼答案並不重要。你在sql的結尾沒有看到「...」嗎?順便說一句,它編譯和工作(你還沒有在編譯器中試過!),如果sum的值爲null,它會將它轉換爲0,所以不能爲空。我沒有發現您的評論有幫助。問題是直接的。解決方案是否正常,有沒有更好的方法和方法。 – darpet

+0

那麼,編輯完成後,我會同意編譯它。這不是......我也提到過,但我所提到的其實是我誤解的東西,所以它仍然是我的錯。 –

回答