2013-07-16 3 views
4

행에서 기본적으로 계층 구조의 모든 멤버를 선택하려고하지만 둘 중 하나를 하나로 결합하고자합니다. 예를 들어, 회원 A, BC을 포함 할 것이다 그래서 [Group].[Group].members을 선택하면 나에게 All, A, BC을 줄 것이다하지만 BC이 하나의 구성원으로 통합되었습니다 All, A,B&C을 좀하고 싶습니다.두 멤버를 쿼리에 하나로 병합하려면 어떻게해야합니까?

쿼리 내에서 가능합니까?

내가 사용중인 데이터베이스는 주문의 운송 속도, 작은 소포, 트럭 하중 미만의 정보 및 흰색 장갑에 대한 정보를 저장합니다. 작은 소포를 병합하고 트럭 적재량보다 적게 두 개의 운송 속도에 걸쳐 집계 데이터를 얻을 수 있습니다.

나는 계산 멤버를 만들려고 시도 : [Measures].[Not White Glove] as AGGREGATE([Order Product].[Ships Via Group].&[Small Parcel], [Order Product].[Ships Via Group].&[Less than Truck Load])하지만 난 현재 [Order Product].[Ships Via Group].members ON ROWS을 사용하는 방법을 잘 모르겠다.

내가 ([Measures].[Not White Glove], [Order Product].[Ships Via Group].&[White Glove], [Order Product].[Ships Via Group].&[All]) ON ROWS을 넣어 내가 오류 Query (14, 11) The Ships Via Group hierarchy is used more than once in the Crossjoin function.

이것에 대해 갈 수있는 더 나은 방법이 있나요 도착/그 오류가 무엇을 의미합니까?

+0

달성하려는 목표는 무엇입니까? (왜 두 개의 행을 병합해야하며 어느 조건에서 어떤 조건을 병합해야합니까?) 시도한 적이 있습니까? – Pieter

+0

제기 한 포인트에 대해 더 많은 정보를 추가했습니다. 이전에 더 많은 정보를 입력하지 않으셔서 죄송합니다. – Travis

답변

9

괄호가있는 구문 때문에 오류가 발생했습니다. (a, b, c)은 a, b 및 c가 각각 다른 차원의 멤버 인 튜플을 정의합니다. 이 멤버들을 함께 결합하려는 경우 속기 : {a, b, c}을 사용해야합니다.

이제 회원들을 결합하는 것이 가능할 수도 있지만, 원하는만큼 깨끗하고 쉽지는 않을 수 있습니다. 다음은 새 멤버를 만든 다음 계층 구조에서 원본 멤버를 제외 (Except 통해)하여이를 수행하는 한 가지 방법의 예입니다.

WITH 
    SET [Combined] AS { 
     [Customer].[Customer Geography].[Country].&[France], 
     [Customer].[Customer Geography].[Country].&[Germany] 
    } 
    MEMBER [Customer].[Customer Geography].[France & Germany] AS Aggregate([Combined]) 
SELECT 
    [Measures].[Internet Sales Amount] ON 0, 
    Union(
     Except([Customer].[Customer Geography].[Country], [Combined]), 
     [Customer].[Customer Geography].[France & Germany] 
    ) ON 1 
FROM [Adventure Works] 

결과 :

    Internet Sales Amount 
Australia     $9,061,000.58 
Canada     $1,977,844.86 
United Kingdom   $3,391,712.21 
United States    $9,389,789.51 
France & Germany   $5,538,330.05 

희망 바른 길에 당신을 설정할 수 있습니다.

+0

이것은 매우 유용합니다! 감사! – Travis

+0

계산 된 구성원에 대해이 솔루션을 사용해 보았는데 결과에 "Measures dimensions에서 계산 된 구성원에 집계 함수를 사용할 수 없습니다"라는 메시지와 함께 #Error가 발생합니다. 어떤 아이디어? – Neo

+0

감사합니다. 이 구문은 몬드리안에서도 잘 작동합니다. –

관련 문제