集合修飾詞

集合可透過額外或變更的選項加以修改。這樣的修改可編寫於集合運算式中。

修飾詞的組成為一或數個欄位名稱、各個欄位的後面都加上要對該欄位做出的選項,然後全部括在 < 和 > 內。例如︰<Year={2007,+2008},Region={US}>.欄位名稱和欄位值可照例以引號括住,例如 <[Sales Region]={’West coast’, ’South America’}>

集合修飾詞可修改前面的集合識別碼選擇。如果沒有引用集合識別碼,則目前選項狀態是隱含的。

有許多方法可定義選項,如下所述。

以其他欄位為基礎

簡單的方式是,選項會以另一個欄位的選取值為基礎,例如 <OrderDate = DeliveryDate>。此修飾詞會取用 DeliveryDate 的選取值,然後將其套用為 OrderDate 的選項。如果有許多相異值 (超過幾百個),則此運算會需要大量的 CPU,應避免使用。

以元素集合 (修飾詞中的欄位值清單) 為基礎

最常見的情況是,選項會以括在大括弧內的欄位值清單為基礎,其中各值是以逗號分隔,例如 <Year = {2007, 2008}>。大括弧在此是用於定義元素集合,其中的元素可為欄位值或欄位值的搜尋。搜尋一律以雙引號定義,例如 <Ingredient = {"*Garlic*"}> 會選取所有包含字串「garlic」的食材。搜尋不會區分大小寫,並且也會針對排除值。

強制排除

最後,處於 And 模式的欄位也可能會強制排除。若要強制排除特定的欄位值,則需要在欄位名稱前使用 “~”。

範例與結果:  

範例 結果
sum( {1<Region= {USA} >} Sales ) 會傳回 USA 區域的銷售額,忽略目前選項
sum( {$<Region = >} Sales ) 會傳回目前選項的銷售額,但移除「Region」選項
sum( {<Region = >} Sales )

會傳回與上例相同的結果。當省略要修改的集合時,會採用 $

備註: 注意!前兩個範例中的語法會解譯為在「Region」中「無選項」,亦即有可能是指定其他選項的所有區域。這不等同於語法 <Region = {}> (或隱含會產生空元素集合之等號右側的其他任何文字),因為會解譯為無地區。
sum( {$<Year = {2000}, Region = {US, SE, DE, UK, FR}>} Sales ) 會傳回目前選項的銷售額,但包含「Year」和「Region」兩者中的新選項。
sum( {$<~Ingredient = {“*garlic*”}>} Sales )

Ingredient 欄位處於 AND 模式下。

會傳回目前選項的銷售額,但強制排除包含字串「garlic」的所有食材。

sum( {$<Year = {“2*”}>} Sales ) 會傳回目前選項的銷售額,但為在欄位「Year」中選取以數字「2」開頭的所有年份 (亦即很有可能是 2000 年和之後的年份)。
sum( {$<Year = {“2*”,”198*”}>} Sales ) 與上例相同,但現在 1980 年代也包括在選項中。
sum( {$<Year = {“>1978<2004”}>} Sales ) 傳回目前選項的銷售額,但同時使用數字搜尋,以區分要進行加總的銷售額的年份範圍。