冗余带来的麻烦

坐席管理系统中

有个所属组字段,user_group

users表中有 user_id user_group

user_groups表中有user_group group_name

正常情况下,知道user_id就可以关联查询到group_name了。

修改用户信息时,user_group改变,用户的所属组也就改变了。

延伸出来的订单表order中,为了方便起见,也包含了user_id,user_group。

所有的统计都基于order表。

问题来了,一旦users表改变,也就是用户所属组改变,并没有把order订单表中的user_group数据改变。

统计信息的时候就会不知道该以谁作为真正的组,是订单表呢,还是users表呢?

很多相关的,包含user_group的代码都要改变。

还要一点点的检查核对。

冗余是用空间换时间。

可以减轻查询负担,但是会造成数据不统一。

正常的表之间,通过外键,关联查询就行了。

原文地址:https://www.cnblogs.com/jiqing9006/p/4991415.html