数据仓库中引用相同主键的 2 个外键

问题描述 投票:0回答:1

在数据仓库中,事实表不能有来自同一主键的 2 个外键?

我有一个 city_id ,它有外键 origin_city_id 和 fk destination_city_id 。在MYSQL中的时候,关系成功。但是在 POWER BI 中出现问题。

这是我的桌子

dim_city |

  • 城市_id
  • 城市名称

事实交易 |

  • 交易ID
  • origin_city_id
  • destination_city_id
  • 价格

或者也许有更换桌子的建议?

在 MYSQL 中,两个 FK 均由主键引用。但是当我尝试使用 Power BI 时。只有其中一个关系可以处于活动状态,因此另一个 FK 未连接。

mysql powerbi foreign-keys primary-key data-warehouse
1个回答
0
投票

我可以说事实表有多个外键引用维度表中的同一主键并不罕见,但在 Power BI 中可能会很棘手。

因此,您可以通过将

origin_city_id
destination_city_id
组合到单个字段中来在维度表中创建一个复合键,然后在事实表中使用一个引用此复合键的外键。

或者如果

origin_city_id
destination_city_id
之间的关系是多对多,则只使用桥接表,您可能需要一个桥接表来以显式方式表示这种关系。

如果您还认为可以对事实进行非规范化,只需复制出发地和目的地的城市信息(使用此替代方案,您可以避免关系)。

© www.soinside.com 2019 - 2024. All rights reserved.