2011-03-14 62 views
0

我目前正在製作一份報告,其中存儲過程內部生成此報告的結果。在T-SQL或運行時執行數學運算

對於這份報告,我回來的是包含分子和分母分別記錄列表。當報告顯示時,實際百分比結果(分子/分母)需要沿着這些數字顯示。

問題就變成是一個偉大的性能增益產生的存儲過程裏面這些百分比,並已返回他們所計算的百分比或只返回兩個數字,並有報表的運行環境產生的百分比是多少?

的報告可能會有所不同的運行環境,這將主要通過一個WCF Web服務通過一個Silverlight應用程序內部的頁面。或者,還會有一個rdlc報告查看器選項,以便他們可以直接通過瀏覽器查看報告。

回答

1

很難回答這一個 - 從廣義上講,我想這是不是你擔心的 - 毫秒兩種方式。

但是,出於理智的原因,我會在服務器上做到這一點。如果計算具有任何類型的業務影響,則無論系統運行報告,都希望它保持一致。

哦,四捨五入測試 - 不同的應用程序不同的圓,常常以意想不到的方式...

0

如果不需要對結果進行查詢,如果它不是一個複雜的計算,然後我讓客戶端計算百分比有2個原因。

1-它將減少線上的數據量。

2-如果您的服務器必須每秒處理大量查詢,它將減少它的有效負載。

但是,在這兩種情況下,只有在涉及大量數據時纔會注意到更改。

0

如果你想爲像MVVM的架構,你會希望避免在PROC這樣做的,只返回與您的模型相關的值。然後,您將擴展模型以包含計算的字段。

如果你正在尋找「GET-R-做」的方法則只是計算它在查詢中。既然你發送了這兩個值,那麼沒有增加成本(不會有反正)。簡單的分歧不會讓你失望。