【问题标题】:a cube is a source for another cube一个多维数据集是另一个多维数据集的源
【发布时间】:2012-10-20 06:25:59
【问题描述】:

我有一个类似以下示例的案例,我需要有人在这种情况下提出一个好的做法。

假设您有两个多维数据集,第一个是时间表多维数据集,您可以在其中找到员工在特定日期在项目上工作了多少小时。一个员工一天可以做很多项目,很多员工可以做一个项目。一些员工不从事项目工作,例如支持部门(如会计、ISD、人力资源......等)下的员工,他们在比方说“一般”上写下小时数。 第二个立方体是 project_funder,它显示了资助者在项目中投入了多少钱。一个项目可以由多个资助者资助,一个资助者可以提供多个项目。

我如何从第二个多维数据集获取项目与资助者之间的关系并在第一个多维数据集(时间表多维数据集)中使用它,以找到类似的内容:员工 emp1 在由资助者 1 资助的项目 proj1 上工作了 8 小时,并且资助者2? ...我正在使用 SSAS 2008

【问题讨论】:

    标签: ssas business-intelligence cube


    【解决方案1】:

    它并不以在大型数据集上具有良好的性能而闻名,但您是否阅读过 LOOKUPCUBE

    http://msdn.microsoft.com/en-us/library/ms144720.aspx

    Returns the value of a Multidimensional Expressions (MDX) expression 
    evaluated over another specified cube in the same database.
    

    这是一个很好的例子:

    WITH MEMBER [Measures].[Lookup Internet Order Count] AS    
    LOOKUPCUBE("Mined Customers", "([Measures].[Internet Order Count], 
    [Customer].[Customer Geography].[Country].&[" + 
    [Customer].[Customer Geography].CurrentMember.Name + "])")
    
    SELECT [Customer].[Customer Geography].[Country] ON COLUMNS,    
    {
     [Measures].[Internet Sales Amount], 
     [Measures].[Lookup Internet Order Count]
    } ON ROWS    
    FROM [ADVENTURE WORKS]
    

    取自:http://www.bidn.com/blogs/DustinRyan/ssis/814/lookupcube-function-mdx-query-performance-test

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-28
      • 1970-01-01
      • 2020-12-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多