INTERSECT

Возвращает пересечение строк двух таблиц, сохраняя дубликаты.

Синтаксис

INTERSECT(<table_expression1>, <table_expression2>)  

Параметры

Термин Определение
Table_expression Любое выражение DAX, возвращающее таблицу.

Возвращаемое значение

Таблица, содержащая все строки в table_expression1, которые также находятся в table_expression2

Исключения

Замечания

  • Интерсект не является коммутативным. Как правило, Intersect(T1, T2) будет иметь другой результирующий набор, чем Intersect(T2, T1).

  • Повторяющиеся строки сохраняются. Если строка отображается в table_expression1 и table_expression2, она и все дубликаты в table_expression_1 включаются в результирующий набор.

  • Имена столбцов будут соответствовать именам столбцов в table_expression1.

  • Возвращаемая таблица имеет происхождение на основе столбцов в table_expression1 независимо от происхождения столбцов во второй таблице. Например, если первый столбец первого table_expression имеет происхождение в базовый столбец C1 в модели, интерсект уменьшит строки на основе пересечения первого столбца второго table_expression и сохраните происхождение в базовом столбце C1 без изменений.

  • Столбцы сравниваются на основе позиционирования и сравнения данных без приведения типов.

  • Возвращаемая таблица не содержит столбцы из таблиц, связанных с table_expression1.

  • Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).

Пример

Состояния1

State
а
A
B
Б
Б
C
D
D

Штаты2

State
Б
C
D
D
D
E

Intersect(States1, States2)

State
Б
Б
Б
C
D
D

Intersect(States2, States1)

State
Б
C
D
D
D