含集合運算子的集合修飾詞
集合運算子用來納入、排除或交集不同的元素集。這結合不同的方法來定義元素集。
運算子與用於集合識別碼的內容相同。
運算子 | 描述 |
---|---|
+ | 聯集。此二元運算會傳回一個集合,其中包含的記錄或元件屬於兩個集合運算元中的任一個集合。 |
- | 差集。此二元運算會傳回一個集合,其中包含的記錄或元件屬於兩個集合算元中的第一個集合,但不屬於第二個集合。此外,當作為一元運算子時,會傳回補集。 |
* | 交集。此二元運算會傳回一個集合,其中包含的記錄或元件同時屬於兩個集合運算元。 |
/ | 對稱差 (XOR)。此二元運算會傳回一個集合,其中包含的記錄或元件屬於任一個集合運算元,但不同時屬於這兩個集合運算元。 |
例如,以下兩個修飾詞定義相同的欄位值集合:
-
<Year = {1997, "20*"}>
-
<Year = {1997} + {"20*"}>
兩個運算式都選取 1997 和以 20 為開頭的年份。換言之,這是兩個條件的聯集。
集合運算子也允許更複雜的定義。例如︰
<Year = {1997, "20*"} - {2000}>
此運算式將會選取與上述相同的年份,但也會排除 2000 年。
如需詳細資訊,請參閱 集合運算子。
範例:含集合運算子的集合修飾詞的圖表運算式
範例 | 結果 |
---|---|
sum( {$<Product = Product + {OurProduct1} – {OurProduct2} >} Sales ) | 會傳回目前選項的銷售額,但「OurProduct1」產品會加入所選產品的清單中,而「OurProduct2」則會從所選產品的清單中移除。 |
sum( {$<Year = Year + ({“20*”,1997} – {2000}) >} Sales ) |
會傳回目前選項的銷售額,但加上「Year」欄位中的其他選項:1997 年和以「20」開頭的所有年份,不過不包含 2000 年。 請注意,如果 2000 年包含在目前選項中,則修改後仍會包含在內。 |
sum( {$<Year = (Year + {“20*”,1997}) – {2000} >} Sales ) |
會傳回與上例幾乎相同的結果,但此處會排除 2000 年,即使起初包含在目前選項中。此範例顯示了有時候使用括弧定義優先順序的重要性。 |
sum( {$<Year = {“*”} – {2000}, Product = {“*bearing*”} >} Sales ) |
會傳回目前選項的銷售額,但包含「Year」中的新選項:除了 2000 年之外的所有年份;而且僅針對包含字串「bearing」的產品。 |