/ (除法) (MDX)
執行算術運算,將一個數字除以另一個數字。
語法
Dividend / Divisor
參數
Dividend
傳回數值的有效多維度運算式 (MDX) 運算式。Divisor
傳回數值的有效 MDX 運算式。
傳回值
具有較高優先順序之參數的資料類型的值。
備註
/ (Divide) 運算子實際傳回的值代表第一個運算式除以第二個運算式的商。
兩個運算式的資料類型必須相同,或者其中一個運算式必須可以用隱含方式轉換為另一個運算式的資料類型。 如果 Divisor 評估為 Null 值,則運算子會引發錯誤。 如果 Divisor 和 Dividend 都評估為 Null 值,則運算子會傳回 Null 值。
範例
以下範例示範此運算子的用法。
-- This query returns the freight cost per user,
-- for products, averaged by month.
With Member [Measures].[Freight Per Customer] as
[Measures].[Internet Freight Cost]
/
[Measures].[Customer Count]
SELECT
[Ship Date].[Calendar].[Calendar Year] Members ON 0,
[Product].[Category].[Category].Members ON 1
FROM
[Adventure Works]
WHERE
([Measures].[Freight Per Customer])
將非零或非 null 值除以零或 null 時將會傳回 Infinity 值,它會以 "1.#INF" 形式顯示在查詢結果中。 在大多數情況下,您應該檢查除數是否為零,以避免這個狀況。 下列範例為您示範作法:
//Returns 1.#INF when Internet Sales Amount is zero or null
Member [Measures].[Reseller to Internet Ratio] AS
[Measures].[Reseller Sales Amount]
/
[Measures].[Internet Sales Amount]
//Traps the division by zero scenario and returns null instead of 1.#INF
Member [Measures].[Reseller to Internet Ratio With Error Handling] AS
IIF([Measures].[Internet Sales Amount]=0, NULL,
[Measures].[Reseller Sales Amount]
/
[Measures].[Internet Sales Amount])
SELECT
{[Measures].[Reseller to Internet Ratio],[Measures].[Reseller to Internet Ratio With Error Handling]} ON 0,
[Product].[Category].[Category].Members ON 1
FROM
[Adventure Works]
WHERE([Date].[Calendar].[Calendar Year].&[2001])