Crossjoin (MDX)

更新日期: 2006 年 7 月 17 日

返回一个或多个集的叉积。

语法

Standard syntax
Crossjoin(Set_Expression1 ,Set_Expression2 [,...n] )

Alternate syntax
Set_Expression1 * Set_Expression2 [* ...n]

参数

  • Set_Expression1
    返回集的有效多维表达式 (MDX)。
  • Set_Expression2
    返回集的有效多维表达式 (MDX)。

备注

Crossjoin 函数返回两个或更多指定集的叉积。所得集中元组的顺序取决于要联接的集的顺序以及其成员的顺序。例如,如果第一个集由 {x1, x2,...,xn} 组成,第二个集由 {y1, y2, ..., yn} 组成,则这两个集的叉积为:

{(x1, y1), (x1, y2),...,(x1, yn), (x2, y1), (x2, y2),...,

(x2, yn),..., (xn, y1), (xn, y2),..., (xn, yn)}

ms144816.note(zh-cn,SQL.90).gif重要提示:
如果交叉联接中的集由同一维度中不同属性层次结构中的元组组成,此函数将只返回实际存在的那些元组。有关详细信息,请参阅 MDX 中的重要概念 (MDX)

示例

以下三个示例返回相同的结果 - United States 各州的 Internet Sales Amount(按州显示)。前两个示例使用两个交叉联结语法,第三个示例演示了使用 WHERE 子句返回相同的信息。

示例 1

SELECT CROSSJOIN
   (
      {[Customer].[Country].[United States]},
       [Customer].[State-Province].Members
   ) ON 0 
FROM [Adventure Works]
WHERE Measures.[Internet Sales Amount]

示例 2

SELECT 
   [Customer].[Country].[United States] * 
      [Customer].[State-Province].Members
ON 0 
FROM [Adventure Works]
WHERE Measures.[Internet Sales Amount]

示例 3

SELECT 
   [Customer].[State-Province].Members
ON 0 
FROM [Adventure Works]
WHERE (Measures.[Internet Sales Amount],
   [Customer].[Country].[United States])

请参阅

参考

MDX 函数参考 (MDX)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 7 月 17 日

更改的内容:
  • 更新了语法和参数以使表达更清晰。
  • 添加了更新的示例。