sql >> データベース >  >> RDS >> Sqlserver

MDX 特定の階層のない経時カウント

    同様の問題があり、次のように解決しました:

    SSAS は実際にどの階層にいるかを伝えることができないため、例のように単純にこれを行うことはできません。ただし、次の方法でうまくいきました。あなたの名前に合わせて作り直そうとしましたので、明らかな構文エラーがないかチェックしてください...

    これはすべてキューブ計算スクリプトに含まれます。「ブロック ビュー」の代わりに「スクリプト ビュー」を使用する必要がある場合があります。

    CREATE MEMBER CURRENTCUBE.[Measures].[Commitment Total] AS NULL;
      

    その後、後で各階層のスクリプトで定義します:

    SCOPE (DESCENDANTS([Date Dim].[FY Hierarchy],,AFTER));    
    [Measures].[Commitment Total] =
    sum(
    [Date Dim].[FY Hierarchy].[Fiscal Year].members(0):[Date Dim].[FY Hierarchy].currentMember
    , [Measures].[Commitment Count]);
    END SCOPE;
    
    SCOPE (DESCENDANTS([Date Dim].[CY Hierarchy],,AFTER));    
    [Measures].[Commitment Total] =
    sum(
    [Date Dim].[CY Hierarchy].[Calendar Year].members(0):[Date Dim].[CY Hierarchy].currentMember
    , [Measures].[Commitment Count]);
    END SCOPE;
      

    クエリに存在する階層に応じて、適切に動作するようになりました。どちらの階層もクエリにない場合は NULL になることに注意してください。




    1. MySQLとMacOSSierraとの互換性

    2. 同じ列値を持つmysql行を1つの行にグループ化するにはどうすればよいですか?

    3. Servicestack:属性なしでインデックス、自動インクリメントなどを処理しますか?

    4. 改善したい非常に具体的なMySQLクエリ