从左表中返回那些也出现在右侧表中的行。
语法
INTERSECT(<左表>, <右表>)
参数 | 属性 | 描述 |
左表 | 交集运算使用的左表表达式 | |
右表 | 交集运算使用的右表表达式 |
返回值
表
整个表或具有一列或多列的表
返回两个表的交集,继承左表的沿袭。
备注
- INTERSECT 的参数不可交换。通常,INTERSECT(T1, T2)的结果与 INTERSECT(T2, T1)的结果有不同的含义。
- 保留重复的行。如果有一行同时出现在 INTERSECT 的两个参数中,那么它和它在 Left Table 中的所有相同行都会返回。
- 返回的表的列名与左表中的列名匹配。具有左表的数据沿袭,与第二个表中的列的沿袭无关。例如,如果左表的第一列有沿袭到模型的列 C1,INTERSECT 将移除那些只在右表上存在的记录,并保持基列 C1 的沿袭不变。
- 列根据所处位置进行比较,数据比较不进行强制类型转换。
- 返回的表不包括与左表相关的表的列,也就是不支持扩展表理论
示例
以下查询保留了数据模型中物理列的沿袭,即使作为第二参数的表不具有相同沿袭:
EVALUATE INTERSECT ( VALUES ( Product[Color] ), UNION ( ROW ( "Color", "Red" ), ROW ( "Color", "Blue" ) ) )
扩展阅读:
说点什么