假设这么设计 id(int),user_id(int),collected_id(int)
如果有十万个用户,每个用户收藏5个东西,那么有很多冗余数据啊
我的想法是将收藏的商品id 保存成字符串 逗号分隔;
1.我设计的表: user_id int, collected_id varchar(xx) -----1,'1,2,3,4'
假设这么设计 id(int),user_id(int),collected_id(int)
如果有十万个用户,每个用户收藏5个东西,那么有很多冗余数据啊
我的想法是将收藏的商品id 保存成字符串 逗号分隔;
1.我设计的表: user_id int, collected_id varchar(xx) -----1,'1,2,3,4'
用逗号分割开来不方便统计数据,或者用户对收藏进行增删改查。
还是每一条数据单独一条。然后如果觉得数据太多统计起来耗费时间长,可以单独新建一个统计表,一个用户一条数据。每次增删对表数据进行+1 -1.
13 回答13k 阅读
7 回答2.1k 阅读
5 回答1.4k 阅读
3 回答1.3k 阅读✓ 已解决
5 回答1.6k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
数据库范式是曾经空间很昂贵的情况下提出的,不一定非要按数据库范式来设计,冗余也是可以的