Aracılığıyla paylaş


Crossjoin (MDX)

Bir veya daha fazla çapraz çarpımı verir.

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

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

Bağımsız değişkenler

  • Set_Expression1
    Sayı geçerli bir çok boyutlu deyimler (MDX) ifade bir küme.

  • Set_Expression2
    Sayı geçerli bir çok boyutlu deyimler (MDX) ifade bir küme.

Remarks

The Crossjoin işlev returns the cross product of two or more specified sets. Sonuç kümesinde dizilerini sırasını ayarlar, birleştirilecek ve üyeleri sırasını sırasını bağlıdır.Örneğin, ilk küme oluşan {x 1, x 2,..., xn} ve {y1, y2,..., y ikinci küme oluşurn}, bu ayarlar çapraz çarpımı olan:

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

(x 2, yn),..., (xn, y1), (xn, y2),..., (xn, yn)}

Important noteImportant Note:

Bu işlev, çapraz birleştirmek kümeleri dizilerini aynı boyutta farklı öznitelik hiyerarşileri arasında oluşan, yalnızca sahibin meşru olarak gerçekten varolan dizilerini döndürecektir.Daha fazla bilgi için bkz: Anahtar kavramları, MDX (MDX).

Örnekler

Aşağıdaki sorgu Crossjoin işlevinin kullanımı basit bir örnek Sorguda sütun ve satır eksenindeki gösterir:

SELECT

[Customer].[Country].Members *

[Customer].[State-Province].Members

ON 0,

Crossjoin(

[Date].[Calendar Year].Members,

[Product].[Category].[Category].Members)

ON 1

FROM [Adventure Works]

WHERE Measures.[Internet Sales Amount]

Aşağıdaki örnek otomatik süzme aynı boyutun farklı hiyerarşileri crossjoined olduğunda, gerçekleştikten işlemi gösterir:

SELECT

Measures.[Internet Sales Amount]

ON 0,

//Only the dates in Calendar Years 2003 and 2004 will be returned here

Crossjoin(

{[Date].[Calendar Year].&[2003], [Date].[Calendar Year].&[2004]},

[Date].[Date].[Date].Members)

ON 1

FROM [Adventure Works]

Aşağıdaki üç örnek, ABD iller durumu ile ınternet satış tutarı - aynı sonuçlar döndürür.Ilk iki iki çapraz birleştirmek sözdizimleri kullanın ve üçüncüsü aynı bilgileri geri dönmek için WHERE yan tümce kullanımı gösterilmiştir.

Örnek 1

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

Örnek 2

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

Örnek 3

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

See Also

Reference