Ssas 为什么元组中集合的顺序很重要?

Ssas 为什么元组中集合的顺序很重要?,ssas,mdx,olap,olap-cube,ssas-2008,Ssas,Mdx,Olap,Olap Cube,Ssas 2008,我正在看文件 我发现其中的一个条款有点棘手,我并没有很清楚地理解它,如下所示 元组在集合中的顺序很重要;它影响,比如,, 轴标注中的嵌套顺序。第一个元组表示 第一个维度或最外层维度,第二个元组表示下一个元组 最外层尺寸,依此类推 {(时间。[下半场],Route.nonground.air),(Route.nonground.air, 时间【下半场】} 另外,在元组中使用交叉连接可以吗 (Time.[2nd half] * Route.nonground.air * Route.nongroun

我正在看文件

我发现其中的一个条款有点棘手,我并没有很清楚地理解它,如下所示

元组在集合中的顺序很重要;它影响,比如,, 轴标注中的嵌套顺序。第一个元组表示 第一个维度或最外层维度,第二个元组表示下一个元组 最外层尺寸,依此类推

{(时间。[下半场],Route.nonground.air),(Route.nonground.air, 时间【下半场】}

另外,在元组中使用交叉连接可以吗

(Time.[2nd half] * Route.nonground.air * Route.nonground.air * Time.[2nd half])
有人能用一个简单的例子来阐述这一点吗


谢谢。

规范指的是集合中元组的顺序,而不是集合中元组中层次结构的顺序(顺便说一句,集合中所有元组的层次结构必须相同,但这与规范的这一部分无关)

这很重要,因为数学集合没有任何特定的顺序,即。E从数学上讲,这些集合

{a, b, c}

他们是平等的

但由于MDX用于报告,报告中的显示顺序可能相关,因此MDX集始终具有特定的顺序是很方便的。数学集和MDX集之间的另一个区别是MDX集可以有重复项,而在数学意义上,一个元素要么包含在一个集中,要么不包含在一个集中,但从不包含多次


如果将其与SQL进行比较,则SQL结果集在定义上与数学集一样无序,但可能包含重复的记录。但是,在某些情况下,您可以按顺序获取SQL结果集,但必须通过显式的
orderby
子句请求该结果集。有些SQL方言不允许按e排序。G在子选择中,因为这些不会直接返回给最终用户。从技术上讲,如果明确请求,只保证结果集的某个顺序的优点是优化器比始终交付结果的特定顺序更自由地构建有效的执行计划。

规范指的是一个集合中元组的顺序,不是集合元组中层次结构的顺序(顺便说一句,集合中所有元组的层次结构都必须相同,但这与规范的这一部分无关)

这很重要,因为数学集合没有任何特定的顺序,即。E从数学上讲,这些集合

{a, b, c}

他们是平等的

但由于MDX用于报告,报告中的显示顺序可能相关,因此MDX集始终具有特定的顺序是很方便的。数学集和MDX集之间的另一个区别是MDX集可以有重复项,而在数学意义上,一个元素要么包含在一个集中,要么不包含在一个集中,但从不包含多次

如果将其与SQL进行比较,则SQL结果集在定义上与数学集一样无序,但可能包含重复的记录。但是,在某些情况下,您可以按顺序获取SQL结果集,但必须通过显式的
orderby
子句请求该结果集。有些SQL方言不允许按e排序。G在子选择中,因为这些不会直接返回给最终用户。从技术上讲,如果明确请求,只保证结果集的某个顺序的优势在于优化器比总是要交付结果的特定顺序更自由地构建有效的执行计划