Join 微策略连接属性

Join 微策略连接属性,join,attributes,report,cross-join,microstrategy,Join,Attributes,Report,Cross Join,Microstrategy,我想做一份有关以下方面的报告: 两个不同事实表的2个度量 两个事实表共有1个属性(来自查找表) 仅在一个事实表中存在的1个属性(来自另一个查找表) 在我的环境中,Microstrategy进行交叉连接,我得到了这个结果 我希望Microstrategy避免交叉连接来检索第一个度量的值。有什么解决办法吗 多亏了大家交叉连接是在同一报告中同时显示度量和不相关事实的唯一方法。如果您考虑连接没有任何共同键的表(独立于MSTR),则情况也是如此 如果您希望用户看到错误,如果他们以可能导致交叉联接的方

我想做一份有关以下方面的报告:

  • 两个不同事实表的2个度量
  • 两个事实表共有1个属性(来自查找表)
  • 仅在一个事实表中存在的1个属性(来自另一个查找表)
在我的环境中,Microstrategy进行交叉连接,我得到了这个结果

我希望Microstrategy避免交叉连接来检索第一个度量的值。有什么解决办法吗


多亏了大家

交叉连接是在同一报告中同时显示度量和不相关事实的唯一方法。如果您考虑连接没有任何共同键的表(独立于MSTR),则情况也是如此


如果您希望用户看到错误,如果他们以可能导致交叉联接的方式组合度量和属性,您可以使用VLDB设置“笛卡尔联接警告”:“仅当仓库表涉及笛卡尔联接的任何一侧时取消执行”。如果用户试图放入“Valuta”,则使用此设置与“预算”一起,他们将看到一条错误消息,而不是交叉联接。

交叉联接是在同一报告中同时显示度量和不相关事实的唯一方法。如果您考虑连接没有任何共同键的表(独立于MSTR),则情况也是如此


如果您希望用户看到错误,如果他们以可能导致交叉联接的方式组合度量和属性,您可以使用VLDB设置“笛卡尔联接警告”:“仅当仓库表涉及笛卡尔联接的任何一侧时取消执行”。如果用户试图放入“Valuta”,则使用此设置与“预算”一起,他们将看到一条错误消息,而不是交叉连接。

您是如何玷污指标的级别的?你能发布生成的sql吗?哪一个是两者中的属性,哪一个是唯一的属性?您不应该得到交叉联接,但是报告级别(属性1和属性2)的度量值不存在的错误。我不想手动添加度量值的级别。在我的示例中,这两个指标的级别都是“报告级别”。常见属性是“consurente”,不常见属性是“Valuta”,它仅与度量“Fatturato”相关。我知道如果我在度量“预算”中添加级别“valuta”并设置为过滤器“忽略”,我将有正确的行为,但是我之前说过,我不想手动添加它。您为什么不想将级别添加到度量中?在企业环境中,这是非常危险的,因为在事实表中的每个度量中,您都必须添加所有希望忽略的属性。在我们的例子中,我们有很多属性和很多没有连接的度量/事实,我们希望允许用户进行免费分析,而不存在交叉连接的风险。每个MicroStrategy开发人员都会告诉您,级别度量在企业环境中使用。正如您所看到的,对于不同的事实表,有不同级别的聚合,级别度量是解决这一问题的方法。您需要确保对事实有正确的定义,以便为度量创建正确的级别。我同意有时候这很烦人,但这是用microStrategy实现的方法。你是如何玷污指标的级别的?你能发布生成的sql吗?哪一个是两者中的属性,哪一个是唯一的属性?您不应该得到交叉联接,但是报告级别(属性1和属性2)的度量值不存在的错误。我不想手动添加度量值的级别。在我的示例中,这两个指标的级别都是“报告级别”。常见属性是“consurente”,不常见属性是“Valuta”,它仅与度量“Fatturato”相关。我知道如果我在度量“预算”中添加级别“valuta”并设置为过滤器“忽略”,我将有正确的行为,但是我之前说过,我不想手动添加它。您为什么不想将级别添加到度量中?在企业环境中,这是非常危险的,因为在事实表中的每个度量中,您都必须添加所有希望忽略的属性。在我们的例子中,我们有很多属性和很多没有连接的度量/事实,我们希望允许用户进行免费分析,而不存在交叉连接的风险。每个MicroStrategy开发人员都会告诉您,级别度量在企业环境中使用。正如您所看到的,对于不同的事实表,有不同级别的聚合,级别度量是解决这一问题的方法。您需要确保对事实有正确的定义,以便为度量创建正确的级别。我同意有时候会很烦人,但这是用MicroStrategy实现的方法