繁体   English   中英

如何使 power bi 与多对多一起工作?

[英]How to make power bi work with many to many?

我有以下 model,其中关系表像往常一样创建多对多关系。

|Table car |      |relation car worker|
|Id car    |1----*|id car             |
|car things|      |id worker          |*-----         
                                             | 
                                             | 
                 |table worker  |            /
                 |id worker     |1----------/
                 |worker things |       \
                                         \_______________ 
                                                         \
|table building |      |relation worker building|         |
|id building    |1----*|id building             |         | 
|building things|      |id worker               |*---------

当我在 Power Bi 中加载此 model 时,它可以构建包含以下内容之一的表格可视化(和其他):

  • 选项1:
    • 车事
    • 工人东西
  • 选项 2:
    • 工人东西
    • 建造东西

但是当我尝试从 model 的边缘放入表格可视化时,它完全失败了:

  • 车事
  • 建造东西

这是错误:

在此处输入图像描述

这里发生了什么? 为什么会出错?

基本上我需要看看哪些汽车访问了哪些建筑物(并做一两个总结)

据我所知,您的 model .. 您需要将交叉过滤器方向设置为两个而不是单个,以便它可以过滤备份表

这是一个可以帮助您理解的示例

例如,对于来自tableA的 1 ,它可以关联来自tableB的 1 或 2 ,因为来自 Table B 的 1 也可以关联来自tableC的 1 或 2 ,所以对于来自tableA的 1 ,它无法确定来自tableC的 1 还是 2参考

*----------------------------*
|Table A   Table B   Table C |
*----------------------------*
|   1          1        1,2  |
|   1          2        1,2  |
*----------------------------*

您可以使用公式创建一个新表

tableName = CROSSJOIN(tableA,tableB,tableC....tableZ)

我必须创建一个新表,就好像我在 SQL 中进行内部联接(按预期工作)。

单击“建模”、“创建表”。

对于公式:

NewTable = NATURALINNERJOIN(tb_cars, 
               NATURALINNERJOIN(tb_rel_car_worker, 
                   NATURALINNERJOIN(tb_workers, 
                       NATURALINNERJOIN(tb_rel_worker_building, tb_buildings))))

然后我开始使用这张桌子上的所有东西而不是其他东西。


为了创建包含按其中一个边缘表分组的零计数的指标,我不得不将此表分开:

    Partial Table= NATURALINNERJOIN(tb_rel_car_worker, 
                       NATURALINNERJOIN(tb_workers, 
                           NATURALINNERJOIN(tb_rel_worker_building, tb_buildings))))

然后在关系编辑器中,我添加了Partial Table[id_car]tb_cars[id_car]之间的关系。

现在,按汽车分组的指标可以使用在 DAX 公式中添加+0的技术来显示图表中指标总和为零的汽车。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM