CROSSJOIN
Область применения: вычисление вычисляемого столбца вычисляемой таблицы Меры визуального элемента
Возвращает таблицу, содержащую декартовую продукцию всех строк из всех таблиц в аргументах. Столбцы в новой таблице — это все столбцы во всех таблицах аргументов.
Синтаксис
CROSSJOIN(<table>, <table>[, <table>]…)
Параметры
Термин | Определение |
---|---|
table | Любое выражение DAX, возвращающее таблицу данных |
Возвращаемое значение
Таблица, содержащая декартовую продукцию всех строк из всех таблиц в аргументах.
Замечания
Имена столбцов из аргументов таблицы должны отличаться во всех таблицах или возвращается ошибка.
Общее количество строк, возвращаемых CROSSJOIN() равно продукту числа строк из всех таблиц в аргументах; Кроме того, общее количество столбцов в результирующих таблицах — это сумма количества столбцов во всех таблицах. Например, если TableA содержит строки rA и столбцы cA, а TableB содержит строки rB и столбцы cB, а в таблице есть строки rC и столбец cC, то результирующая таблица имеет rA × rb × строками rC и столбцами cA + cB + cC.
Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).
Пример
В следующем примере показаны результаты применения CROSSJOIN() к двум таблицам: цвета и бланки.
Цвета таблицы содержат цвета и шаблоны:
Color | Расписание |
---|---|
Красный | Горизонтальная полоса |
Зеленый | Вертикальная полоса |
Синий | Перекрестие |
В табличной бланке содержатся шрифты и презентации:
Шрифт | Презентация |
---|---|
шрифт с засечками | рельефный |
sans-serif | выгравированный |
Выражение для создания перекрестного соединения представлено ниже:
CROSSJOIN( Colors, Stationery)
Если указанное выше выражение используется везде, где ожидается табличное выражение, результаты выражения будут следующими:
Color | Расписание | Шрифт | Презентация |
---|---|---|---|
Красный | Горизонтальная полоса | шрифт с засечками | рельефный |
Зеленый | Вертикальная полоса | шрифт с засечками | рельефный |
Синий | Перекрестие | шрифт с засечками | рельефный |
Красный | Горизонтальная полоса | sans-serif | выгравированный |
Зеленый | Вертикальная полоса | sans-serif | выгравированный |
Синий | Перекрестие | sans-serif | выгравированный |