0

MDX 쿼리가 음수 값을 잘 처리하지 못합니까? 성능이 현저한 것은 아니지만 이상한 결과를 얻을 수 있습니까?MDX 네거티브 값 처리

이상한 결과가 있습니다. 사실 테이블의 첫 번째 열에는 null 키 값을 나타내는 음수 값이 있습니다.

MDX 쿼리를 만들지 않습니다. 간단히 드래그 앤 드롭하면 소프트웨어가 MDX를 만듭니다.

수정 부품 1 : 사용중인 소프트웨어는 Pentaho User Console입니다. 사용자 콘솔에 넣으려면 스키마 워크 벤치를 사용하여 스키마와 큐브를 설정해야합니다.

실제 데이터 자체는 정확합니다.

일반적으로 드릴 다운하면 사용자 콘솔에서 드릴 다운하는 결과를 보여줍니다. 음수 값; 그러나, 나는 어떤 가치도 돌려받지 않는다. I 은 MDX가 음수 값을 다르게 처리한다고 생각하지만 MDX의 초보자이며 10-15 분의 Google 검색을 기반으로합니다.

샘플 데이터 : 사이즈 ID 값 :

business_id, carrier_id, at_id, as_id, device_id, created_date_id, created_for_id, cancel_date_id, completed_date_id 

측정 : 각 열의 activity_count

샘플 값 :

-1, 100, 29, 1, 300, 4269, 500, 1020, -1, 1134 

액티비티 수 = 1

편집 2 부 :

MDX 로그를 가져 오는 중입니다.

내가 현재 행에 "business_id"를 걸었습니다, 간단하게하기 위해, 내 유일한 조치는 "activity_count" 나는 business_id = -1 필터링하기 위해 노력하고있어.

내가 MDX와 경험,하지만 나는 MDX 이런 식으로 뭔가 보일 것 상상 : 그것은

Mondrian Error:No function matches signature '<Level> = <Numeric Expression>' 

하지만 을 말한다 때문에 지금

select [measures] on columns 
from [cube_name] 
where [business_filters].[business_id] = -1 

나는 현재 오류 메시지가 받고 있어요를 THX 이것은 MDX가 어떻게 생겼는지 보여줍니다. 너희들은 어떻게 생각하니?

편집 3 부 :

재미있는 사실 : 나는 데이터베이스 테이블로 이동하는 경우, business_id = 내 측정 값이 -1 모든 행에 대해 널 (null)이 아닙니다.

일부 MDX를 생성하면 값은 Null입니다. -1 값을 양수 값으로 대체하면 반환 된 계수가 정확합니다. 왜 이런거야 . . .

select 
    non empty {[Measures]} 
on columns, 
    [business_filters].[business_id].[-1] 
on rows 
from 
    [activities_fact_01] 
+0

소프트웨어 란 무엇입니까? 샘플 값, 예상 출력 및 실제 출력을 제공 할 수 있습니까? –

+0

귀하의 질문에 답변하기 위해 위의 내 게시물을 편집했습니다. – LunchBox

+0

안에 excel과 pyramid가 있습니다. 우리는 음수가 "다르게 취급됩니다"는 것을 눈치 채지 못했습니다. - 나는 당신의 질문을 이해하지 못합니다 : _ 그것이 다르게 대우 받고있을 때입니까? _ – whytheq

답변

0

나는 무엇이 잘못되었는지 알아 냈습니다.

외래 키 값이 차원에없는 것과 관련이 있습니다. 내가 Pentaho에서 드릴 다운을하러 갔을 때 외래 키가 해당 기본 키 값을 갖지 않았기 때문에 이러한 결과가 돌아 오지 않았습니다.

나는 이것을 알아 내려고 노력하면서 1.25 일을 보냈지 만, 나는 결코 그 실수를 다시하지 않을 것입니다.