有代理商表,代理商下面有用户组,它们是1:n关系,用户组下面又有职员,也是1:n的关系,职员可以下订单。
要求可以查找一个代理商的所有订单,同时也可以查到一个单子是哪个代理的哪个职员下的,在建表时遇到了麻烦将职员与订单1:n的关系对应,这样在显示代理商的所有订单列表时会涉及到很多个join操作,感觉效率应该比较低,特别是订单和职员数量比较多时更严重;如果将代理商与订单直接1:n关联,再将下单职员的id存入订单中,这样效率要高些,但是有数据冗余,不太符合三范式要求,该怎么办?
要求可以查找一个代理商的所有订单,同时也可以查到一个单子是哪个代理的哪个职员下的,在建表时遇到了麻烦将职员与订单1:n的关系对应,这样在显示代理商的所有订单列表时会涉及到很多个join操作,感觉效率应该比较低,特别是订单和职员数量比较多时更严重;如果将代理商与订单直接1:n关联,再将下单职员的id存入订单中,这样效率要高些,但是有数据冗余,不太符合三范式要求,该怎么办?
直接JOIN就可以了 效率不会低的