含隱含集合運算子的集合修飾詞
在集合修飾詞中撰寫選項的標準方式是使用等號。例如︰
Year = {">2015"}
集合修飾詞中的等號右側的運算式稱為元素集。這定義一組相異欄位值,換言之即選項。
此標記法會定義新的選項,而忽略欄位中的目前選項。因此,若集合識別碼包含此欄位中的選項,則舊的選項將被元素集中的選項取代。
若您想要以欄位中的目前選項作為選取基礎,需要使用不同的運算式
例如,若您想要採用舊的選項,並新增年份晚於 2015 年的要求,可以撰寫下列內容:
Year = Year * {">2015"}
星號是定義交集的集合運算子,因此您將會取得 Year 中目前選項之間的交集,以及年份晚於 2015 的附加要求。替代方式是以下列內容撰寫此部分:
Year *= {">2015"}
也就是說,指派運算子 (*=) 隱含性地定義交集。
類似地,可以使用下列內容定義隱含的聯集、排除和對稱差:+=、–=、/=
範例:含隱含集合運算子的集合修飾詞的圖表運算式
載入指令碼
在資料載入編輯器中載入下列資料作為內嵌載入,以建立以下的圖表運算式範例。
MyTable: Load Year(Date) as Year, Date#(Date,'YYYY-MM-DD') as ISO_Date, Date(Date#(Date,'YYYY-MM-DD'),'M/D/YYYY') as US_Date, Country, Product, Amount Inline [Date, Country, Product, Amount 2018-02-20, Canada, Washer, 6 2018-07-08, Germany, Anchor bolt, 10 2018-07-14, Germany, Anchor bolt, 3 2018-08-31, France, Nut, 2 2018-09-02, Czech Republic, Bolt, 1 2019-02-11, Czech Republic, Bolt, 3 2019-07-31, Czech Republic, Washer, 6 2020-03-13, France, Anchor bolt, 1 2020-07-12, Canada, Anchor bolt, 8 2020-09-16, France, Washer, 1];
如需更多關於使用內嵌載入的資訊,請參閱 內嵌載入。
含隱含集合運算子的圖表運算式
透過下列圖表運算式在 Qlik Sense 工作表中建立表格。
從國家清單中選取 Canada 和 Czech Republic。
國家/地區 | Sum(Amount) | Sum({<Country*={Canada}>} Amount) | Sum({<Country-={Canada}>} Amount) | Sum({<Country+= {France}>} Amount) |
---|---|---|---|---|
總計 | 24 | 14 | 10 | 28 |
加拿大 | 14 | 14 | 0 | 14 |
捷克 | 10 | 0 | 10 | 10 |
法國 | 0 | 0 | 0 | 4 |
解釋
-
維度:
-
Country
-
-
量值:
-
Sum(Amount)
目前選項的總格 Amount 請注意,只有 Canada 和 Czech Republic 有非零值。
-
Sum({<Country*={Canada}>}Amount)
目前選項的總和 Amount,與 Country 為 Canada 的要求交集。若 Canada 不屬於使用者選項,則集合運算式會傳回空的集合,該欄在所有列都會是 0。
-
Sum({<Country-={Canada}>}Amount)
目前選項的總和 Amount,但首先從 Country 選項中排除 Canada。若 Canada 不屬於使用者選項,則集合運算式不會變更任何數字。
-
Sum({<Country+={France}>}Amount)
目前選項的總和 Amount,但首先將 France 新增至 Country 選項。若 France 已屬於使用者選項,則集合運算式不會變更任何數字。
-
如需關於運算式的詳細資訊,請參閱在視覺化中使用運算式。