Freigeben über


/ (Division) (MDX)

Führt eine arithmetische Operation aus, die eine Zahl durch eine andere dividiert.

Syntax

Dividend / Divisor

Parameter

  • Dividend
    Ein gültiger MDX-Ausdruck (Multidimensional Expressions), der einen numerischen Wert zurückgibt.

  • Divisor
    Ein gültiger MDX-Ausdruck, der einen numerischen Wert zurückgibt.

Rückgabewert

Ein Wert vom Datentyp des Parameters, der die höhere Rangfolge besitzt.

Hinweise

Der Ist-Wert, der vom / (Divide)-Operator zurückgegeben wird, stellt den Quotienten aus dem ersten Ausdruck geteilt durch den zweiten dar.

Beide Ausdrücke müssen vom gleichen Datentyp sein, oder es muss möglich sein, einen Ausdruck implizit in den Datentyp des anderen Ausdrucks zu konvertieren. Wenn Divisor zu einem NULL-Wert ausgewertet wird, löst der Operator einen Fehler aus. Werden sowohl Divisor als auch Dividend zu einem NULL-Wert ausgewertet, gibt der Operator einen NULL-Wert zurück.

Beispiele

Das folgende Beispiel zeigt die Verwendung dieses Operators.

-- 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])

Die Division eines Werts ungleich 0 oder ungleich NULL durch 0 oder NULL ergibt den Wert „Unendlich“. Dieser wird in Abfrageergebnissen als „1.#INF” dargestellt. In den meisten Fällen sollten Sie auf Division durch 0 prüfen, um diese Situation zu vermeiden. Das folgende Beispiel zeigt Ihnen wie:

//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])

Siehe auch

Verweis

Konzepte