【问题标题】:Why use a CROSSJOIN when it seems to be implied?为什么要在似乎暗示的时候使用 CROSSJOIN?
【发布时间】:2020-11-26 00:34:54
【问题描述】:

以下两者有什么区别,哪个优于另一个?

CROSSJOIN(
    [Team].[Hierarchy].[Conference].[NFC],
    {[Team].[Name].[Name].[Detroit Lions], [Team].[Name].[Name].[Minnesota Vikings]}
    )

还有:

(
    [Team].[Hierarchy].[Conference].[NFC],
    {[Team].[Name].[Name].[Detroit Lions], [Team].[Name].[Name].[Minnesota Vikings]}
    )

似乎在元组中提供的任何集合都是自动交叉连接的,那么为什么需要 CROSSJOIN` 关键字/函数?说下面三个是一样的对吗?

CROSSJOIN({}, {}, ...) == ({}, {}, ...) == {} * {} * ...

【问题讨论】:

    标签: ssas mdx


    【解决方案1】:

    以上两种说法没有区别。但是在最后一条语句中

    CROSSJOIN({}, {}, ...) == ({}, {}, ...) == {} * {} * ...

    最后一部分 "({}, {}, ...) == {} * {} *" 不一定是真的。当你写 "{} * {}" 只有当两个集合(由 {} 表示)在维度和层次结构上相同时才存在。 详情请参阅 Dimensionality and hierarchility

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-13
      • 1970-01-01
      相关资源
      最近更新 更多