집계 된 명명 된 집합을 사용하여 MDX에서 쿼리를 필터링 할 수 있습니까? 결과 집합의 집합 항목을 원하지 않으므로 WHERE로 이동했지만 모든 측정 값이 반환되는 것 같습니다 (null).
먼저 직원 계층 구조에서 몇 가지 멤버를 사용하여 집합을 만듭니다.
WITH
SET [Combined] as {
[Staff].[Group].[Practice Group].&[04],
[Staff].[Group].[Practice Group].&[06]
}
그런 다음 해당 세트를 새 멤버로 집계합니다.
MEMBER [Staff].[Group].[Group Combo] AS Aggregate([Combined])
일반적으로 쿼리에서 계층화 (쿼리에 따라 다름)를 사용하여보고 영역으로 사용하고 모든 것이 정상입니다. 그러나 이번에는 다음과 같은 멤버 조합을 기반으로 데이터를 필터링해야했습니다.
WHERE ([Staff].[Group].[Group Combo])
이것은 나에게 (null) 값을 주었고 [Combined]를 사용하면 순환 참조 오류가 발생했지만 아래를 사용하면 정상적으로 작동했습니다.
WHERE ({[Staff].[Group].[Practice Group].&[04],[Staff].[Group].[Practice Group].&[06]})
내가 여기서 뭔가를 간과하고 있습니까? 아니면 잘못된 접근 방식을 사용하고 있습니까? 내가 쿼리하는 큐브의 특이한 것일까 요?
이 동작은 프로세서가 쿼리 내에서 절을 실행하는 순서와 관련이 있다고 말하고 싶습니다.
WHERE
전에 일어난다 WITH
다음이 잘 작동한다고 언급했습니다. where 절에 명시 적 멤버를 지정하는 것은 매우 표준 적이고 빠릅니다 .
WHERE ({[Staff].[Group].[Practice Group].&[04],[Staff].[Group].[Practice Group].&[06]})
0 축에있는 것처럼 하위 선택에 추가 할 수 있습니다.
SELECT
...
...
FROM
(
SELECT
{[Staff].[Group].[Practice Group].&[04],[Staff].[Group].[Practice Group].&[06]} ON 0
FROM [YourCube]
);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다