Only - 차트 함수
Only() 는 집계된 데이터에서 사용 가능한 결과가 하나만 있는 경우 값을 반환합니다. 예를 들어, 단위 가격=9인 제품만 검색하는 경우 단위 가격이 9인 제품이 둘 이상 있으면 NULL을 반환합니다.
구문:
Only([{SetExpression}] [TOTAL [<fld {,fld}>]] expr)
반환 데이터 유형: dual
인수:
인수 | 설명 |
---|---|
expr | 측정할 데이터가 포함된 표현식 또는 필드입니다. |
SetExpression | 기본적으로 집계 함수는 선택에 의해 정의된 사용 가능한 레코드의 집합을 집계합니다. 집합 분석 표현식으로 대체 레코드 집합을 정의할 수 있습니다. |
TOTAL |
TOTAL이 함수 인수 앞에 오는 경우, 현재 선택을 고려하되 현재 차원 값에 관련되지 않은 가능한 모든 값에 대한 계산이 실행됩니다. 즉, 차트 차원은 무시됩니다. TOTAL [<fld {.fld}>](여기서 TOTAL 한정자 뒤에는 하나 이상의 필드 이름 목록이 차트 차원 변수의 하위 집합으로 옴)을 사용하여 가능한 전체 값의 하위 집합을 만듭니다. |
예 및 결과:
Customer | Product | UnitSales | UnitPrice |
---|---|---|---|
Astrida | AA | 4 | 16 |
Astrida | AA | 10 | 15 |
Astrida | BB | 9 | 9 |
Betacab | BB | 5 | 10 |
Betacab | CC | 2 | 20 |
Betacab | DD | - | 25 |
Canutility | AA | 8 | 15 |
Canutility | CC | - | 19 |
예 | 결과 |
---|---|
Only({<UnitPrice={9}>} Product) |
BB이며, UnitPrice가 '9'인 유일한 Product이기 때문입니다. |
Only({<Product={DD}>} Customer) |
Betacab이며, 이름이 'DD'인 Product를 판매하는 유일한 Customer이기 때문입니다. |
Only({<UnitPrice={20}>} UnitSales) |
UnitPrice가 20일 때 UnitSales의 수는 2이며, UnitPrice =20일 때 UnitSales의 값이 하나뿐이기 때문입니다. |
Only({<UnitPrice={15}>} UnitSales) |
NULL이며, UnitPrice =15일 때 UnitSales의 값이 두 개이기 때문입니다. |
예에서 사용된 데이터:
ProductData:
LOAD * inline [
Customer|Product|UnitSales|UnitPrice
Astrida|AA|4|16
Astrida|AA|10|15
Astrida|BB|9|9
Betacab|BB|5|10
Betacab|CC|2|20
Betacab|DD||25
Canutility|AA|8|15
Canutility|CC||19
] (delimiter is '|');