2015-10-02 361 views
0

我想知道是否有辦法來實現這種聚合:SAP HANA計算百分比

Hana graphical calculation view with calculated column

在實踐:使用(我認爲)CE_AGGREGATION怎麼可能創造像「計算列」中的百分比公式? 我嘗試了很多組合(CE_PROJECTION,CE_AGGREGATION,CE_CALC ...),但其中沒有一個可以工作。

這是因爲它似乎腳本做了一種總和(A/b * 100),但我想要求和(a)/ sum(b)* 100。在圖形模式下反而非常簡單!

有人有關於如何重現的想法?

回答

-1

真的,不要打擾使用CE_函數了。 改爲使用SQL。

這不僅容易得多,而且SAP HANA還有更多選項可以在內部重寫和優化語句。 這應該導致更多的選擇,以獲得更好的性能。

無論如何,要做這樣的計算,有CE_CALC函數,您可以在CE_PROJECTION函數中使用。

再次:停止使用CE_函數。 SQL是國王!

+0

嗨, 感謝您的回答....所以,我是第一個喜歡SQL(標準)Ce功能。 但問題首先出現在SQL環境中的SQL上。一個非常簡單的Sql來測試它: 1)看看這個簡單的查詢: 選擇「DocEntry」,「CardCode」,「DocTotal」,「GrosProfit」,(「DocTotal」/「GrosProfit」)* 100爲「PRC 「來自OINV 2)將它放在HANA的計算視圖上 – Hammeronthenet

+0

3)如果您在分析中測試HANA Studio中的結果,可以看到如果您在標籤軸DocEntry和Cardcode中輸入百分比計算是正確的。但是,如果您嘗試使用CardCode對其進行分組,則HANA工作室會顯示錯誤結果 發生這種情況是因爲它彙總了百分比(而不是計算SUM的百分比)。 在圖形環境中(總是計算視圖),可以定義計算列。 但是...如何在純腳本環境中做同樣的事情? – Hammeronthenet

+0

我明白你的意思了。這裏的問題在於,在* final *聚合之後應用計算列公式的特性僅適用於圖形計算視圖。原因是對於這些類型的視圖,HANA並不像理性查詢處理器那樣工作,但而是根據消耗計算視圖的最終SQL查詢重新排列執行。 –