我正在开发PowerPivot项目,我需要在检索产品列表(包括价格)的SQL Server查询和包含产品和其他价格的Excel数据表之间创建连接。目的是将我的假商店的价格与假的并行商店进行比较。
我的SQL查询返回商店的所有产品:
P1 $10
P2 $20
P3 $33
P4 $44
等...
Excel数据表仅包含一些价格不同的产品:
P1 $11
P2 $15
然后,在我的PowerView数据表中,我可以比较价格 包括一个KPI,可以轻松查看我的假价是否比其他商店便宜:
Product | Our price | Their Price | KPI status
P1 | $10 | $11 | Yes !
P2 | $20 | $15 | No !
它运作良好,但即使数据表中没有行,它也会显示我商店的所有产品。实际上,我只想显示与Excel数据表匹配的行。
那么,如何创建一个"内部联接"保留了一个"左连接" ?
答案 0 :(得分:0)
使用DAX表达式连接表。 这将解决加入问题。 内连接的语法(这里a和b是两个表)
EVALUATE
FILTER (
CROSSJOIN ( a, b ),
a[key] = b[key]
)