암시적 집합 연산자를 사용하는 집합 수정자
집합 수정자에서 선택을 작성하는 표준 방법은 등호를 사용하는 것입니다. 예:
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을 선택합니다.
테이블 - 암시적 집합 연산자를 사용하는 차트 표현식
Country |
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 |
France |
0 |
0 |
0 |
4 |
설명
-
차원:
-
측정값:
-
Sum(Amount)
현재 선택에 대한 합계 Amount입니다. Canada 및 Czech Republic만 0이 아닌 값을 가집니다.
-
Sum({<Country*={Canada}>}Amount)
Country가 Canada여야 한다는 요구 사항과 교차하는 현재 선택의 합계 Amount입니다. Canada가 사용자 선택의 일부가 아닌 경우 집합 표현식은 빈 집합을 반환하고 열은 모든 행에서 0을 갖습니다.
-
Sum({<Country-={Canada}>}Amount)
현재 선택의 합계 Amount이지만 먼저 Country 선택에서 Canada를 제외합니다. Canada가 사용자 선택의 일부가 아닌 경우 집합 표현식은 숫자를 변경하지 않습니다.
-
Sum({<Country+={France}>}Amount)
현재 선택에 대한 합계 Amount이지만 먼저 Country 선택에 France를 추가합니다. France가 이미 사용자 선택의 일부인 경우 집합 표현식은 숫자를 변경하지 않습니다.
집합 표현식에 대한 자세한 내용은 시각화에서 표현식 사용을 참조하십시오.
예 |
결과 |
sum( {$<Product += {OurProduct1, OurProduct2} >} Sales )
|
현재 선택의 판매량을 반환하되, 암시적 합집합을 사용하여 'OurProduct1' 및 'OurProduct2' 제품을 선택된 제품 목록에 추가합니다.
|
sum( {$<Year += {“20*”,1997} – {2000} >} Sales )
|
현재 선택의 판매량을 반환하되, 암시적 합집합을 사용하여 1997년 및 “20”으로 시작하는 모든 연도(2000년 제외)를 선택에 추가합니다.
현재 선택에 2000이 포함된 경우 수정 후 포함됩니다. <Year=Year + ({“20*”,1997}–{2000})>와 같습니다.
|
sum( {$<Product *= {OurProduct1} >} Sales )
|
현재 선택된 제품과 OurProduct1 제품의 교집합에 해당하는 현재 선택의 판매량을 반환합니다.
|