[英]Star Schema: Triple Relations between Fact and Dimension
我正在从ERD建模一个Star Schema。 该数据库是一家租赁公司。 我的事实表现在包含一个出租预订。 客户能够预订汽车,收取汽车和回车。 发生这种情况的日期应予以记录。
因此,我的“星型模式”现在具有一个带有日/月/年的时间维度,并且与事实表具有三个关系。 我想知道这是正确的方法还是要考虑其他选择,因为我从未见过一个维度方案具有多个关系的星型方案。
就是这个:
Booking(Fact)
bookingId
bookingDate(FK)
collectionDate(FK)
returnDate(FK)
Time(Dim)
timeId
day
month
year
是的,您可以多次对同一个维度进行事实联接。 我已经看到了它特别用于时间维度。 我不确定使用什么键将Fact关联到Time dim,但是在选择数据时,您可能最终会遇到这样的查询:
select bFact.bookingID,t1.day "Booking Date",t2.day "Collection Date",t3.day "Return Date"
from Booking bFact
join Time t1 on t1.date = bFact.bookingDate
join Time t2 on t2.date = bFact.collectionDate
join Time t3 on t3.date = bFact.returnDate
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.