分享方式:


運算子 (MDX 語法)

在多維度運算式 (MDX) 中,運算子可讓您執行下列動作:

  • 永久或暫時變更資料。

  • 搜尋符合指定條件的值或物件。

  • 實作值或運算式之間的決策。

  • 先測試特定條件,再開始或認可交易,或在執行特定語句之前。

MDX 支援下表所列的運算子:

若要執行這種類型的作業 使用
將值指派給變數,或將結果集資料行與別名產生關聯。 指派運算子
加法、減法、乘法、除法。 算術運算子
測試條件的真相,例如 AND、OR、NOT 和 XOR。 位元運算子
比較值與另一個值或運算式。 比較運算子
永久或暫時將兩個字串合併成一個字串。 串連運算子
永久或暫時將兩個集合運算式合併成單一集合。 集合運算子
在一個運算元上執行作業。 一元運算子

注意

在查詢中,任何可以看到 Cube 中要搭配某種運算子使用之資料的人都可以執行作業。 不過,您需要適當的許可權,才能成功變更資料。

使用多個運算子時,MDX 評估運算子的順序很重要。 同樣地,運算子的使用者可能需要先將一個資料類型轉換成另一個資料類型,才能評估運算子。

評估複雜運算式

您可以使用運算子來結合數個較小的運算式來建置運算式。 在這些複雜的運算式中,MDX 會根據 Analysis Services 所使用的運算子優先順序定義來評估運算子。 MDX 會先執行優先順序較高的運算子,再執行優先順序較低的運算子。

瞭解運算子優先順序

下列清單顯示運算子優先順序,從最高到最低。 相同行中的運算子在優先順序上相等,除非由括弧強制,否則會從左至右進行評估:

  • IS

  • ^

  • /, *

  • +, -

  • <>, >=, =, <=, >, <

  • NOT

  • Xor

  • OR

如需 MDX 中運算子的詳細資訊,請參閱 MDX 運算子參考 (MDX)。

判斷結果

當您結合簡單運算式以形成複雜運算式時,結合資料類型優先順序規則的運算子規則會決定結果值的資料類型。

如果結果為字元或 Unicode 值,則結合定序優先順序規則之運算子的規則會決定結果的定序。 如需定序的詳細資訊,請參閱 語言和定序(Analysis Services)。

另外還有規則會根據簡單運算式的有效位數、小數位數和長度來判斷結果的有效位數、小數位數和長度。

轉換資料類型

MDX 會在需要不同類型的運算式中使用該物件時,隱含地將物件轉換成不同的類型。 下表定義每個物件的轉換規則。

原始類型 需要類型 轉換
層級 設定 <level.members >
階層 成員 <hierarchy.defaultmember >
成員 Tuple ( < 成員 > )
Tuple 成員 <tuple.item > (0)
Tuple Scalar <tuple.value >

另請參閱

MDX 運算子參考 (MDX)
MDX 語法元素 (MDX)