0

私は 2 つの異なる日付ディメンションを持つキューブに取り組んでいます: 最初のものは患者の入院日を管理します: [hosp_date]年、四半期、月、相対日付で編成されています: これは 1980 年 1 月 1 日からの日数をカウントします。

2 つ目は患者の退院日を管理します。1 つ目 [disc_date]と同じ組織です。

これらの 2 つの次元はいっぱいで、2 日の間に隙間はありません。

このキューブには、ホスペダライゼーションの数をカウントするメジャーが 1 つだけあります。入院日数で計算されたメンバーを作成したいので、次のような相対日付を使用します。

with member [Measures].[dd] AS '[disc_date].[relative_date].currentmember - [hosp_date].[relative_date].currentmember'


select {[Measures].[dd]} on 0,
{[patient].[patient_id].members} on 1
from [cube]

そして、このクエリは思ったように機能しませんでした。これは、disc_date に終了した入院数と hosp_date に開始した入院数の差を返します。したがって、患者ごとに 0 を返します。いいえを取得するにはどうすればよいですか。患者ごとの入院日数は?

読むためのtnx。

4

1 に答える 1

0

実際には、計算メジャーの計算中に、キューブの既定のメジャーが指定されていないため、MDX はキューブの既定のメジャーを使用します。

また、ディメンションの 2 つの [relative_date] レベルでは、クエリで指定されたメンバーがないため、既定のメンバーが使用されます (おそらく [all] メンバー)。したがって、結果は常に 0 です。

考えられる解決策は、ディメンションの 2 つの relative_date レベルをメジャーとしてキューブに追加することです。次に、これらの新しいメジャーを計算で使用します。

于 2010-01-07T15:34:59.003 に答える