CROSSJOIN
傳回數據表,其中包含自變數中所有數據表中所有數據列的笛卡兒乘積。 新數據表中的數據行是所有自變數數據表中的數據行。
語法
CROSSJOIN(<table>, <table>[, <table>]…)
參數
術語 | 定義 |
---|---|
table |
傳回數據表的任何 DAX 表達式 |
傳回值
數據表,其中包含自變數中所有數據表中所有數據列的笛卡兒乘積。
言論
來自
table
自變數的數據行名稱在所有數據表中必須全部不同,否則會傳回錯誤。CROSSJOIN() 傳回的數據列總數等於自變數中所有數據表的數據列數目乘積;此外,結果數據表中的數據行總數是所有數據表中數據行數目的總和。 例如,如果
TableA 具有rA 數據列和 cA 數據行,而TableB 具有rB 列和 cB 數據行,而TableC rC 數據列和cC 數據行:然後,產生的數據表rA × rb × rC 數據列,cA + cB + cC 數據行。在匯出數據行或數據列層級安全性 (RLS) 規則中使用時,不支援在 DirectQuery 模式中使用此函式。
例
下列範例顯示將 CROSSJOIN() 套用至兩個資料表的結果:Colors 和 文具。
資料表 Colors 包含色彩和圖樣:
顏色 | 模式 |
---|---|
紅 | 水平條紋 |
綠 | 垂直條紋 |
藍 | Crosshatch |
表格 文具 包含字型和簡報:
字體 | 介紹 |
---|---|
襯線 | 浮雕 |
sans-serif | 刻 |
產生交叉聯結的運算式如下所示:
CROSSJOIN( Colors, Stationery)
在預期數據表運算式的位置使用上述表達式時,表達式的結果如下所示:
顏色 | 模式 | 字體 | 介紹 |
---|---|---|---|
紅 | 水平條紋 | 襯線 | 浮雕 |
綠 | 垂直條紋 | 襯線 | 浮雕 |
藍 | Crosshatch | 襯線 | 浮雕 |
紅 | 水平條紋 | sans-serif | 刻 |
綠 | 垂直條紋 | sans-serif | 刻 |
藍 | Crosshatch | sans-serif | 刻 |